lp:~xnox/ubuntu-z-systems/+git/ovs

Get this repository:
git clone https://git.launchpad.net/~xnox/ubuntu-z-systems/+git/ovs

Import details

Import Status: Reviewed

This repository is an import of the Git repository at https://github.com/openvswitch/ovs.git.

The next import is scheduled to run .

Last successful import was .

Import started on juju-98ee42-prod-launchpad-codeimport-2 and finished taking 1 minute — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-3 and finished taking 1 minute — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 1 minute — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 50 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 30 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-3 and finished taking 1 minute — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-5 and finished taking 2 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-2 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-2 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 1 minute — see the log

Branches

Name Last Modified Last Commit
main 2024-06-28 21:44:53 UTC
vswitchd: Only lock pages that are faulted in.

Author: Ilya Maximets
Author Date: 2024-06-14 12:22:47 UTC

vswitchd: Only lock pages that are faulted in.

The main purpose of locking the memory is to ensure that OVS can keep
doing what it did before in case of increased memory pressure, e.g.,
during VM ingest / migration. Fulfilling this requirement can be
achieved without locking all the allocated memory, but only the pages
already accessed in the past (faulted in). Processing of the new
traffic involves new memory allocations. Latency on these operations
can't be guaranteed by the locking. The main difference would be
the pre-faulting of the stack memory. However, in order to revalidate
or process upcalls on the same traffic, the same amount of stack is
likely needed, so all the necessary memory will already be faulted in.

Switch 'mlockall' to MCL_ONFAULT to avoid consuming unnecessarily
large amounts of RAM on systems with high core counts. For example,
in a densely populated OVN cluster this saves about 650 MB of RAM per
node on a system with 64 cores. This equates to 320 GB of allocated
but unused RAM in a 500 node cluster.

This also makes OVS better suited by default for small systems with
limited amount of memory.

The MCL_ONFAULT flag was introduced in Linux kernel 4.4 and wasn't
available at the time of '--mlockall' introduction, but we can use it
now. Falling back to an old way of locking in case we're running on
an older kernel just in case.

Only locking the faulted in pages also makes locking compatible with
vhost post-copy live migration by default, because we'll no longer
pre-fault all the guest's memory. Post-copy relies on userfaultfd
to work on shared huge pages, which is only available in 4.11+ kernels.
So, technically, it should not be possible for MCL_ONFAULT to fail and
the call without it to succeed. But keeping the check just in case
for now.

Acked-by: Simon Horman <horms@ovn.org>
Acked-by: Eelco Chaudron <echaudro@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>

branch-3.3 2024-06-28 20:20:14 UTC
netdev-dpdk: Check pending reset when adding device.

Author: Kevin Traynor
Author Date: 2024-06-12 14:32:55 UTC

netdev-dpdk: Check pending reset when adding device.

When a device reset interrupt event (RTE_ETH_EVENT_INTR_RESET)
is detected for a DPDK device added to OVS, a device reset is
performed.

If a device reset interrupt event is detected for a device before
it is added to OVS, device reset is not called.

If that device is later attempted to be added to OVS, it may fail
while being configured if it is still pending a reset as pending
reset is not checked when adding a device.

A simple way to force a reset event from the ice driver for an
iavf device is to set the mac address after binding iavf dev to
vfio but before adding to OVS. (note: should not be set like this
in normal case). e.g.

$ echo 2 > /sys/class/net/ens3f0/device/sriov_numvfs
$ ./devbind.py -b vfio-pci 0000:d8:01.1
$ ip link set ens3f0 vf 1 mac 26:ab:e6:6f:79:4d
$ ovs-vsctl add-port br0 dpdk0 -- set Interface dpdk0 type=dpdk \
      options:dpdk-devargs=0000:d8:01.1

|dpdk|ERR|Port1 dev_configure = -1
|netdev_dpdk|WARN|Interface dpdk0 eth_dev setup error
    Operation not permitted
|netdev_dpdk|ERR|Interface dpdk0(rxq:1 txq:5 lsc interrupt mode:false)
    configure error: Operation not permitted
|dpif_netdev|ERR|Failed to set interface dpdk0 new configuration

Add a check if there was any previous device reset interrupt events
when a device is added to OVS. If there was, perform the reset
before continuing with the rest of the configuration.

netdev_dpdk_pending_reset[] already tracks device reset interrupt
events for all devices, so it can be reused to check if there is a
reset needed during configuration of newly added devices. By extending
it's usage, dev->reset_needed is no longer needed.

Fixes: 3eb91a8d1b9a ("netdev-dpdk: Trigger port reconfiguration in main thread for resets.")
Reviewed-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>

dpdk-latest 2024-06-25 16:10:26 UTC
ci: Check compilation with DPDK experimental API.

Author: David Marchand
Author Date: 2022-09-02 08:36:58 UTC

ci: Check compilation with DPDK experimental API.

Add jobs to check compilation with DPDK experimental API enabled.
This will help us catch issues for the day we need one of them.

Note: this should not be merged to master, intended for dpdk-latest
branch only.

Signed-off-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ian Stokes <ian.stokes@intel.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>

branch-3.1 2024-06-25 09:58:44 UTC
odp-execute: Set IPv6 traffic class in AVX implementation.

Author: Emma Finn
Author Date: 2024-06-12 10:44:23 UTC

odp-execute: Set IPv6 traffic class in AVX implementation.

The AVX implementation for the IPv6 action did not set
traffic class field. Adding support for this field to
the AVX implementation.

Fixes: a879beb4dbee ("odp-execute: Add ISA implementation of set_masked IPv6 action")
Reported-by: Eelco Chaudron <echaudro@redhat.com>
Signed-off-by: Emma Finn <emma.finn@intel.com>
Signed-off-by: Eelco Chaudron <echaudro@redhat.com>

branch-3.2 2024-06-25 09:58:06 UTC
odp-execute: Set IPv6 traffic class in AVX implementation.

Author: Emma Finn
Author Date: 2024-06-12 10:44:23 UTC

odp-execute: Set IPv6 traffic class in AVX implementation.

The AVX implementation for the IPv6 action did not set
traffic class field. Adding support for this field to
the AVX implementation.

Fixes: a879beb4dbee ("odp-execute: Add ISA implementation of set_masked IPv6 action")
Reported-by: Eelco Chaudron <echaudro@redhat.com>
Signed-off-by: Emma Finn <emma.finn@intel.com>
Signed-off-by: Eelco Chaudron <echaudro@redhat.com>

branch-3.0 2024-06-18 16:09:49 UTC
dpdk: Check other_config:dpdk-extra for '--lcores'.

Author: Kevin Traynor
Author Date: 2024-06-13 09:05:00 UTC

dpdk: Check other_config:dpdk-extra for '--lcores'.

Currently dpdk lcore args for DPDK EAL init can be generated or
they can be written directly by the user through dpdk-extra.

If dpdk-extra does not contain '-l' or '-c', a '-l' argument with
a core list for DPDK EAL init will be generated.

The '--lcores' argument should also be checked, as if it is used in
dpdk-extra, currently a '-l' is still generated and that causes
DPDK EAL init to fail:

|00009|dpdk|INFO|EAL ARGS: ovs-vswitchd --lcores 0@18 --in-memory -l 0.
|00012|dpdk|ERR|EAL: Option -l is ignored, because (--lcore) is set!

Add check for '--lcores' in dpdk-extra config and don't generate '-l'
if it is detected:

|00009|dpdk|INFO|EAL ARGS: ovs-vswitchd --lcores 0@8 --in-memory.

Fixes: 543342a41cbc ("DPDK: add support for v2.0.0")
Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Acked-by: Eelco Chaudron <echaudro@redhat.com>

branch-2.17 2024-06-18 16:09:34 UTC
dpdk: Check other_config:dpdk-extra for '--lcores'.

Author: Kevin Traynor
Author Date: 2024-06-13 09:05:00 UTC

dpdk: Check other_config:dpdk-extra for '--lcores'.

Currently dpdk lcore args for DPDK EAL init can be generated or
they can be written directly by the user through dpdk-extra.

If dpdk-extra does not contain '-l' or '-c', a '-l' argument with
a core list for DPDK EAL init will be generated.

The '--lcores' argument should also be checked, as if it is used in
dpdk-extra, currently a '-l' is still generated and that causes
DPDK EAL init to fail:

|00009|dpdk|INFO|EAL ARGS: ovs-vswitchd --lcores 0@18 --in-memory -l 0.
|00012|dpdk|ERR|EAL: Option -l is ignored, because (--lcore) is set!

Add check for '--lcores' in dpdk-extra config and don't generate '-l'
if it is detected:

|00009|dpdk|INFO|EAL ARGS: ovs-vswitchd --lcores 0@8 --in-memory.

Fixes: 543342a41cbc ("DPDK: add support for v2.0.0")
Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Acked-by: Eelco Chaudron <echaudro@redhat.com>

branch-2.16 2023-10-30 12:27:22 UTC
ofp-table: Fix count_common_prefix_run() function.

Author: Eelco Chaudron
Author Date: 2023-10-23 14:22:32 UTC

ofp-table: Fix count_common_prefix_run() function.

It appears that an issue existed in the count_common_prefix_run()
function from the beginning. This problem came to light while
addressing 'Dead assignment' warnings identified by the Clang
static analyzer.

Instead of updating the extra_prefix_len with the current (next)
value, the next value was inadvertently updated with extra_prefix_len.
This patch rectifies this behavior.

Fixes: 95a5454c5110 ("ofp-print: Abbreviate lists of fields in table features output.")
Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
Acked-by: Ilya Maximets <i.maximets@ovn.org>
Signed-off-by: Simon Horman <horms@ovn.org>

branch-2.15 2023-04-06 13:31:48 UTC
Prepare for 2.15.9.

Author: Ilya Maximets
Author Date: 2023-04-06 13:09:32 UTC

Prepare for 2.15.9.

Acked-by: Aaron Conole <aconole@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>

branch-2.14 2023-04-06 13:31:47 UTC
Prepare for 2.14.10.

Author: Ilya Maximets
Author Date: 2023-04-06 13:09:24 UTC

Prepare for 2.14.10.

Acked-by: Aaron Conole <aconole@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>

branch-2.13 2023-04-06 13:31:46 UTC
Prepare for 2.13.12.

Author: Ilya Maximets
Author Date: 2023-04-06 13:09:05 UTC

Prepare for 2.13.12.

Acked-by: Aaron Conole <aconole@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>

branch-2.10 2023-03-06 11:47:50 UTC
netdev-windows: Add checking when creating netdev with system type on Windows

Author: Wilson Peng
Author Date: 2022-11-09 03:31:46 UTC

netdev-windows: Add checking when creating netdev with system type on Windows

In the recent Antrea project testing, some port could not be created
on Windows.

When doing debug, our team found there is one case happening when multiple
ports are waiting for be created with correct port number.

Some system type port will be created netdev successfully and it will cause
conflict as in the dpif side it will be internal type. So finally the port
will be created failed and it could not be easily recovered.

With the patch, on Windows the netdev creating will be blocked for system
type when the ovs_tyep got on dpif is internal. More detailed case description
is in the reported issue No.262 with link below.

Reported-at:https://github.com/openvswitch/ovs-issues/issues/262
Signed-off-by: Wilson Peng <pweisong@vmware.com>
Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org>

branch-2.11 2023-03-06 11:47:35 UTC
netdev-windows: Add checking when creating netdev with system type on Windows

Author: Wilson Peng
Author Date: 2022-11-09 03:31:46 UTC

netdev-windows: Add checking when creating netdev with system type on Windows

In the recent Antrea project testing, some port could not be created
on Windows.

When doing debug, our team found there is one case happening when multiple
ports are waiting for be created with correct port number.

Some system type port will be created netdev successfully and it will cause
conflict as in the dpif side it will be internal type. So finally the port
will be created failed and it could not be easily recovered.

With the patch, on Windows the netdev creating will be blocked for system
type when the ovs_tyep got on dpif is internal. More detailed case description
is in the reported issue No.262 with link below.

Reported-at:https://github.com/openvswitch/ovs-issues/issues/262
Signed-off-by: Wilson Peng <pweisong@vmware.com>
Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org>

branch-2.12 2023-03-06 11:47:18 UTC
netdev-windows: Add checking when creating netdev with system type on Windows

Author: Wilson Peng
Author Date: 2022-11-09 03:31:46 UTC

netdev-windows: Add checking when creating netdev with system type on Windows

In the recent Antrea project testing, some port could not be created
on Windows.

When doing debug, our team found there is one case happening when multiple
ports are waiting for be created with correct port number.

Some system type port will be created netdev successfully and it will cause
conflict as in the dpif side it will be internal type. So finally the port
will be created failed and it could not be easily recovered.

With the patch, on Windows the netdev creating will be blocked for system
type when the ovs_tyep got on dpif is internal. More detailed case description
is in the reported issue No.262 with link below.

Reported-at:https://github.com/openvswitch/ovs-issues/issues/262
Signed-off-by: Wilson Peng <pweisong@vmware.com>
Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org>

branch-2.9 2023-03-06 11:44:59 UTC
netdev-windows: Add checking when creating netdev with system type on Windows

Author: Wilson Peng
Author Date: 2022-11-09 03:31:46 UTC

netdev-windows: Add checking when creating netdev with system type on Windows

In the recent Antrea project testing, some port could not be created
on Windows.

When doing debug, our team found there is one case happening when multiple
ports are waiting for be created with correct port number.

Some system type port will be created netdev successfully and it will cause
conflict as in the dpif side it will be internal type. So finally the port
will be created failed and it could not be easily recovered.

With the patch, on Windows the netdev creating will be blocked for system
type when the ovs_tyep got on dpif is internal. More detailed case description
is in the reported issue No.262 with link below.

Reported-at:https://github.com/openvswitch/ovs-issues/issues/262
Signed-off-by: Wilson Peng <pweisong@vmware.com>
Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org>

branch-2.7 2021-09-30 06:58:15 UTC
datapath-windows:adjust Offset when processing packet in POP_VLAN action

Author: wilsonpeng
Author Date: 2021-09-30 04:56:26 UTC

datapath-windows:adjust Offset when processing packet in POP_VLAN action

In one typical setup, on the Windows VM running OVS Windows Kernel, a Geneva
packet with 8021.q VLAN tag is received. Then it may do POP_VLAN action
processing in Actions.c, if the packet does not have Ieee8021QNetBufferListInfo
in the oob of the packet, it will be processed by function OvsPopVlanInPktBuf().
In the function it will go on remove VLAN header present in the nbl, but related
layers is never readjusted for the offset value at this moment. As a result, it
will cause function OvsValidateIPChecksum drop the packet.

Reported-at:https://github.com/openvswitch/ovs-issues/issues/225
Signed-off-by: wilsonpeng <pweisong@vmware.com>
Signed-off-by: Alin-Gabriel Serdean <aserdean@ovn.org>

branch-2.8 2021-09-30 06:57:59 UTC
datapath-windows:adjust Offset when processing packet in POP_VLAN action

Author: wilsonpeng
Author Date: 2021-09-30 04:56:26 UTC

datapath-windows:adjust Offset when processing packet in POP_VLAN action

In one typical setup, on the Windows VM running OVS Windows Kernel, a Geneva
packet with 8021.q VLAN tag is received. Then it may do POP_VLAN action
processing in Actions.c, if the packet does not have Ieee8021QNetBufferListInfo
in the oob of the packet, it will be processed by function OvsPopVlanInPktBuf().
In the function it will go on remove VLAN header present in the nbl, but related
layers is never readjusted for the offset value at this moment. As a result, it
will cause function OvsValidateIPChecksum drop the packet.

Reported-at:https://github.com/openvswitch/ovs-issues/issues/225
Signed-off-by: wilsonpeng <pweisong@vmware.com>
Signed-off-by: Alin-Gabriel Serdean <aserdean@ovn.org>

branch-2.6 2021-02-10 16:40:15 UTC
Prepare for 2.6.11.

Author: Ilya Maximets
Author Date: 2021-02-10 15:06:32 UTC

Prepare for 2.6.11.

Acked-by: Flavio Leitner <fbl@sysclose.org>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>

branch-2.5 2021-02-10 16:40:13 UTC
Prepare for 2.5.13.

Author: Ilya Maximets
Author Date: 2021-02-10 15:06:24 UTC

Prepare for 2.5.13.

Acked-by: Flavio Leitner <fbl@sysclose.org>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>

ovn-ddlog-patches 2019-10-03 16:41:03 UTC
Export 'count_1bits' function needed by ddlog.

Author: Justin Pettit
Author Date: 2019-10-03 16:39:31 UTC

Export 'count_1bits' function needed by ddlog.

dpdk-hwol 2019-06-20 15:49:02 UTC
netdev-dpdk: Prefix network structures with rte_.

Author: David Marchand
Author Date: 2019-06-04 09:29:08 UTC

netdev-dpdk: Prefix network structures with rte_.

Following a rework of dpdk network structures names [1], update the
concerned parts.

Ran Olivier script [2]:
sh prefix-net-rte.sh $(find -name "*dpdk*.c")
sh prefix-net-rte.sh $(find -name "*dpdk*.h")
sh prefix-net-rte.sh $(find -name "*rte*.c")
sh prefix-net-rte.sh $(find -name "*rte*.h")

1: http://mails.dpdk.org/archives/dev/2019-May/132612.html
2: http://mails.dpdk.org/archives/dev/2019-May/133081.html

Signed-off-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ian Stokes <ian.stokes@intel.com>

branch-2.4 2019-03-18 20:37:42 UTC
travis: Remove sparse support.

Author: Ben Pfaff
Author Date: 2018-10-16 20:57:10 UTC

travis: Remove sparse support.

"sparse" failed to build with this old branch, see e.g.
https://travis-ci.org/openvswitch/ovs/jobs/436851158

Signed-off-by: Ben Pfaff <blp@ovn.org>

branch-2.0 2019-02-04 20:45:25 UTC
odp-util: Stop parse odp actions if nlattr is overflow

Author: Yifeng Sun
Author Date: 2019-02-01 23:56:04 UTC

odp-util: Stop parse odp actions if nlattr is overflow

`encap = nl_msg_start_nested(key, OVS_KEY_ATTR_ENCAP)` ensures that
key->size >= (encap + NLA_HDRLEN), so the `if` statement is safe.

Reported-at: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11306
Signed-off-by: Yifeng Sun <pkusunyifeng@gmail.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>

branch-2.1 2019-02-04 20:45:18 UTC
odp-util: Stop parse odp actions if nlattr is overflow

Author: Yifeng Sun
Author Date: 2019-02-01 23:56:04 UTC

odp-util: Stop parse odp actions if nlattr is overflow

`encap = nl_msg_start_nested(key, OVS_KEY_ATTR_ENCAP)` ensures that
key->size >= (encap + NLA_HDRLEN), so the `if` statement is safe.

Reported-at: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11306
Signed-off-by: Yifeng Sun <pkusunyifeng@gmail.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>

branch-2.2 2019-02-04 20:45:11 UTC
odp-util: Stop parse odp actions if nlattr is overflow

Author: Yifeng Sun
Author Date: 2019-02-01 23:56:04 UTC

odp-util: Stop parse odp actions if nlattr is overflow

`encap = nl_msg_start_nested(key, OVS_KEY_ATTR_ENCAP)` ensures that
key->size >= (encap + NLA_HDRLEN), so the `if` statement is safe.

Reported-at: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11306
Signed-off-by: Yifeng Sun <pkusunyifeng@gmail.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>

branch-2.3 2019-02-04 20:45:05 UTC
odp-util: Stop parse odp actions if nlattr is overflow

Author: Yifeng Sun
Author Date: 2019-02-01 23:56:04 UTC

odp-util: Stop parse odp actions if nlattr is overflow

`encap = nl_msg_start_nested(key, OVS_KEY_ATTR_ENCAP)` ensures that
key->size >= (encap + NLA_HDRLEN), so the `if` statement is safe.

Reported-at: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11306
Signed-off-by: Yifeng Sun <pkusunyifeng@gmail.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>

branch-1.4 2015-01-19 18:10:45 UTC
pktbuf: Always initialize '*bufferp' even when 'pb == NULL'.

Author: Ben Pfaff
Author Date: 2015-01-17 17:21:04 UTC

pktbuf: Always initialize '*bufferp' even when 'pb == NULL'.

Otherwise if a service connection (which does not have buffers) attempts
to use buffers, '*bufferp' will be uninitialized, which can cause a
segfault in the caller.

Found using OFtest configured to use service (active rather than passive)
connections.

Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Thomas Graf <tgraf@noironetworks.com>

branch-1.9 2015-01-19 18:09:56 UTC
pktbuf: Always initialize '*bufferp' even when 'pb == NULL'.

Author: Ben Pfaff
Author Date: 2015-01-17 17:21:04 UTC

pktbuf: Always initialize '*bufferp' even when 'pb == NULL'.

Otherwise if a service connection (which does not have buffers) attempts
to use buffers, '*bufferp' will be uninitialized, which can cause a
segfault in the caller.

Found using OFtest configured to use service (active rather than passive)
connections.

Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Thomas Graf <tgraf@noironetworks.com>

branch-1.11 2015-01-19 18:09:53 UTC
pktbuf: Always initialize '*bufferp' even when 'pb == NULL'.

Author: Ben Pfaff
Author Date: 2015-01-17 17:21:04 UTC

pktbuf: Always initialize '*bufferp' even when 'pb == NULL'.

Otherwise if a service connection (which does not have buffers) attempts
to use buffers, '*bufferp' will be uninitialized, which can cause a
segfault in the caller.

Found using OFtest configured to use service (active rather than passive)
connections.

Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Thomas Graf <tgraf@noironetworks.com>

dpdk-travis-build-test 2014-09-09 22:29:06 UTC
travis: fix DPDK build

Author: Daniele Di Proietto
Author Date: 2014-09-09 22:17:00 UTC

travis: fix DPDK build

Signed-off-by: Daniele Di Proietto <ddiproietto@vmware.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>

ext-320 2014-07-28 22:04:58 UTC
work

Author: Ben Pfaff
Author Date: 2014-07-28 17:58:09 UTC

work

elephant 2014-07-25 19:05:20 UTC
Initial check-in of kernel-based elephant flow detection.

Author: Justin Pettit
Author Date: 2014-04-28 21:25:06 UTC

Initial check-in of kernel-based elephant flow detection.

Areas to work on:

    - Doesn't populate "elephant-flows" field.
    - Doesn't properly handle tunnels.
    - Doesn't have clean way to query elephant table.
    - Double-check locking.
    - Should use names instead of number for mechanism.
    - When changing detection mechanism, should clear old table.
    - Breaks unit tests

branch-1.10 2014-06-23 03:33:01 UTC
ofproto-dpif: Configure datapath max-idle through ovs-vsctl.

Author: Alex Wang
Author Date: 2014-06-20 01:31:19 UTC

ofproto-dpif: Configure datapath max-idle through ovs-vsctl.

This patch adds a new configuration option, "max-idle" to the
Bridge "other-config" column. This sets how long datapath flows,
for the configured bridge, are cached in the datapath before
ovs-vswitchd thread expires them.

This commit is a backport of commit 72310b04 (upcall: Configure
datapath max-idle through ovs-vsctl.).

Signed-off-by: Alex Wang <alexw@nicira.com>
Acked-by: Joe Stringer <joestringer@nicira.com>

branch-1.6 2014-03-20 18:15:09 UTC
cfm: Define old_cfm_fault as 'enum cfm_fault_reason'.

Author: Alex Wang
Author Date: 2014-03-19 23:19:28 UTC

cfm: Define old_cfm_fault as 'enum cfm_fault_reason'.

CFM fault variable type has been changed to 'enum cfm_fault_reason' for
long time. However, inside cfm_run(), the old_cfm_fault is still defined
as boolean. This commit fixes the issue.

Found by inspection.

Signed-off-by: Alex Wang <alexw@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>

branch-1.7 2014-03-20 18:10:44 UTC
cfm: Define old_cfm_fault as 'enum cfm_fault_reason'.

Author: Alex Wang
Author Date: 2014-03-19 23:19:28 UTC

cfm: Define old_cfm_fault as 'enum cfm_fault_reason'.

CFM fault variable type has been changed to 'enum cfm_fault_reason' for
long time. However, inside cfm_run(), the old_cfm_fault is still defined
as boolean. This commit fixes the issue.

Found by inspection.

Signed-off-by: Alex Wang <alexw@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>

branch-1.8 2014-03-20 18:09:02 UTC
cfm: Define old_cfm_fault as 'enum cfm_fault_reason'.

Author: Alex Wang
Author Date: 2014-03-19 23:19:28 UTC

cfm: Define old_cfm_fault as 'enum cfm_fault_reason'.

CFM fault variable type has been changed to 'enum cfm_fault_reason' for
long time. However, inside cfm_run(), the old_cfm_fault is still defined
as boolean. This commit fixes the issue.

Found by inspection.

Signed-off-by: Alex Wang <alexw@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>

branch-1.5 2013-03-12 16:17:16 UTC
ovsdb: Fix memory leak.

Author: Ben Pfaff
Author Date: 2013-01-24 19:33:35 UTC

ovsdb: Fix memory leak.

Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Ethan Jackson <ethan@nicira.com>

vlan-maint 2012-07-10 16:50:22 UTC
ofproto: Preserve in_port across trips through the datapath.

Author: Ben Pfaff
Author Date: 2012-07-10 16:50:22 UTC

ofproto: Preserve in_port across trips through the datapath.

When a "packet out" sent a packet to the datapath and then the datapath
sent the packet back via ODP_ACTION_ATTR_CONTROLLER, the in_port included
in the "packet out" was lost (it became OFPP_LOCAL) because the datapath's
"execute" operation doesn't accept an in_port.

This commit fixes the problem by including the in_port in the userdata
argument to ODP_ACTION_ATTR_CONTROLLER.

NICS-15.
Reported-by: Zoltan Kiss <zoltan.kiss@citrix.com>
CC: David Tsai <dtsai@nicira.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>

branch-1.2 2012-07-02 17:18:13 UTC
ovs-vswitchd: Call mlockall() from the daemon, not the parent or monitor.

Author: Ben Pfaff
Author Date: 2012-06-29 16:22:59 UTC

ovs-vswitchd: Call mlockall() from the daemon, not the parent or monitor.

mlockall(2) says:

       Memory locks are not inherited by a child created via fork(2) and are
       automatically removed (unlocked) during an execve(2) or when the
       process terminates.

which means that --mlockall was ineffective in combination with --detach
or --monitor or both. Both are used in the most common production
configuration of Open vSwitch, so this means that --mlockall has never been
effective in production.

Signed-off-by: Ben Pfaff <blp@nicira.com>

branch-1.3 2012-07-02 17:17:59 UTC
ovs-vswitchd: Call mlockall() from the daemon, not the parent or monitor.

Author: Ben Pfaff
Author Date: 2012-06-29 16:22:59 UTC

ovs-vswitchd: Call mlockall() from the daemon, not the parent or monitor.

mlockall(2) says:

       Memory locks are not inherited by a child created via fork(2) and are
       automatically removed (unlocked) during an execve(2) or when the
       process terminates.

which means that --mlockall was ineffective in combination with --detach
or --monitor or both. Both are used in the most common production
configuration of Open vSwitch, so this means that --mlockall has never been
effective in production.

Signed-off-by: Ben Pfaff <blp@nicira.com>

branch-1.1 2011-08-02 19:22:37 UTC
Prepare Open vSwitch 1.1.2 release.

Author: Justin Pettit
Author Date: 2011-08-02 19:22:37 UTC

Prepare Open vSwitch 1.1.2 release.

wdp 2011-03-03 17:54:33 UTC
wdp-xflow: Remove wx structure from global list when closing.

Author: Ben Pfaff
Author Date: 2011-03-03 17:54:33 UTC

wdp-xflow: Remove wx structure from global list when closing.

Fixes a use-after-free error in wx_run().

Reported-by: Hao Zheng <hzheng@nicira.com>

lts-1.0 2010-11-16 23:17:38 UTC
netdev: Fix carrier status for down interfaces.

Author: Jesse Gross
Author Date: 2010-10-27 22:29:16 UTC

netdev: Fix carrier status for down interfaces.

Currently netdev_get_carrier() returns both a carrier status and
an error code. However, usage of the error code was inconsistent:
most callers either ignored it or didn't perform their task if an
error occured, which prevented bond rebalancing. This makes the
handling consistent by translating an error into a down status in
the netdev library.

Bug #3959

lts-1.0a 2010-10-09 00:18:35 UTC
Release Open vSwitch 1.0.2

Author: Justin Pettit
Author Date: 2010-10-09 00:15:05 UTC

Release Open vSwitch 1.0.2

openflow-1.0 2010-03-25 15:24:23 UTC
dpif-linux: Fix file descriptor leak.

Author: Tetsuo NAKAGAWA
Author Date: 2010-03-25 14:54:15 UTC

dpif-linux: Fix file descriptor leak.

get_major() opens /proc/devices to get the openvswitch major number
but never closes the FD.

xs5.7 2009-12-17 17:56:01 UTC
initscript: pass complete path to pidfile to status command

Author: Ian Campbell
Author Date: 2009-12-17 14:46:52 UTC

initscript: pass complete path to pidfile to status command

Older versions of RHEL/CentOS used pifof in preference to the pidfile
and hence we got away with passing just the basename instead of
including the full path. Using pidof first doesn't make much sense and
this was fixed in RHEL 5 update 4 (see https://bugzilla.redhat.com/show_bug.cgi?id=440658)

This means that on RHEL 5.4 "service vswitch status" always returned
"ovs-vswitchd is stopped" even if it was running. Fix this issue by
passing in the correct pidfile name.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>

for-nox/0.4 2009-01-26 09:05:39 UTC
For SNAT, don't store the pre-fragment L2 header before actions are applied.

Author: Justin Pettit
Author Date: 2009-01-26 09:05:39 UTC

For SNAT, don't store the pre-fragment L2 header before actions are applied.

The IP fragment code doesn't always write the L2 header when generating
new fragments. This problem was fixed in an earlier commit.
Unfortunately, we stored the pre-fragment L2 header when the packet
first arrived--before other packet modifications were applied. This
meant that the results of any OpenFlow L2 modification actions were lost.
This patch pushes the storage of the L2 header until right before the
packet is transmitted (and possibly refragmented).

Thanks to Dan for catching this behavior.

147 of 47 results
This repository contains Public information 
Everyone can see this information.