~xnox/ubuntu-z-systems/+git/ovs:lts-1.0

Last commit made on 2010-11-16
Get this branch:
git clone -b lts-1.0 https://git.launchpad.net/~xnox/ubuntu-z-systems/+git/ovs

Branch merges

Branch information

Name:
lts-1.0
Repository:
lp:~xnox/ubuntu-z-systems/+git/ovs

Recent commits

efa3112... by Jesse Gross

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

58453fd... by Justin Pettit

ovs-vsctl: Prevent double-free when retrying a transaction

25a7821... by Ben Pfaff

netdev-linux: Always check tc_make_request() for NULL return value.

Bug #3912.

ac4ec5f... by Ben Pfaff

ovs-vsctl: Check for dirty reads within transactions.

OVSDB is transactional but it does not implement any form of locking. This
means that read-modify-write operations must verify that the values that
they read are still in place before writing. This commit adds such
checking.

Bug #2387.
Bug #3856.
Bug #3906.

632eb9d... by Ben Pfaff

ovs-vsctl: Add context pointer to struct vsctl_info.

This will be needed in upcoming commits.

7662e18... by Ben Pfaff

vswitch: Make unique "name" columns immutable, to simplify transactions.

OVSDB has transactions but not locking, so a transaction that must
maintain an invariant must check that the starting state is what it
expects. For example, to add a bridge a client must verify that the new
bridge's name does not conflict with any existing bridge's name, given
that the set of bridges might have changed. One way to do that is for
the client to verify that that the set of bridges is the same and that none
of the bridges has been renamed to the new bridge's name. By making
bridge names immutable, the latter part of the check can be omitted.

Mirror names are not required to be unique so this commit does not make
them immutable.

CC: Jeremy Stribling <email address hidden>

c5ef4d5... by Ben Pfaff

ovsdb: Document the "mutable" feature for columns.

This feature has been implemented in OVSDB since the beginning, but until
now it was undocumented.

f3dbabf... by Justin Pettit

netflow: Back-out optimization that could lead to infinite loop

Commit 924282 (netflow: Do 64-bit division less often.) attempted to
remove the 64-bit division used to break flow records with large byte
counts into multiple NetFlow records. The calculation to determine the
number of records was incorrect and should have shifted "byte_delta" by
31 instead of 32. This commit reverts the change (while keeping commit
f22a24 (netflow: Avoid (theoretically) looping 2**32 times.) ), since
the logic is more straight-forward than the optimized version.

Bug #3813

0dfae86... by Justin Pettit

Release Open vSwitch 1.0.3

fcba238... by Ben Pfaff

ofproto: Drop flows from datapath more quickly under heavy load.

In normal operation it makes sense to keep track of all of the flows that
have been seen recently and to cache all of them in the kernel. Under
unusual conditions, such as those caused by network scanning tools or by an
actual targeted DoS attack against the vswitch, the number of flows can
explode to extremely high numbers (hundreds of thousands or more). In such
a situation the vswitch needs to guard against memory exhaustion by
expiring flows more quickly and more often. This commit implements an
inexpensive technique for determining which flows should be dropped in such
a situation.