Age | Commit message (Collapse) | Author |
|
The newly created autopath action will be the way OpenFlow
interacts with the existing bonding infrastructure.
|
|
Until now, it has been the responsibility of an individual daemon to call
die_if_already_running() at an appropriate time. A long time ago, this
had to happen *before* daemonizing, because once the process daemonized
itself there was no way to report failure to the process that originally
started the daemon. With the introduction of daemonize_start(), this is
now possible, but we haven't been taking advantage of it.
Therefore, this commit integrates the die_if_already_running() call into
daemonize_start() and deletes the calls to it from individual daemons.
|
|
If a daemon doesn't start, we need to know why. Being able to
consistently consult the log to find out is helpful.
|
|
This commit adds a few initial users but more are coming up.
|
|
Also deletes svec_split() since this was the only user.
|
|
|
|
|
|
In each of the cases converted here, an shash was used simply to maintain
a set of strings, with the shash_nodes' 'data' values set to NULL. This
commit converts them to use sset instead.
|
|
|
|
|
|
Noticed this last night while playing around with the clang static
analyzer.
|
|
Coverity #10710.
|
|
|
|
This was causing and error during make distcheck for me.
|
|
This makes it possible to modify or delete multiple flows in one run,
which is sometimes convenient.
Requested-by: Paul Ingram <paul@nicira.com>
|
|
An upcoming commit will want to pass a different command.
|
|
Requested-by: Paul Ingram <paul@nicira.com>
|
|
|
|
Garbage collection introduced in
c5f341ab193b9126dffef8c77bf8ed35e91290fd changed ovs-vsctl so that
it would allow the garbage collector to reclaim unused tables
instead of manually deleting them itself. Since garbage collection
runs at transaction completion, undeleted tables would hang around
and could conflict with future actions in a given transaction.
This commit backs out this change.
The following command is an example of something that would have
failed before this commit.
ovs-vsctl -- add-br b \
-- del-br b \
-- add-br b \
-- set Interface b other_config:test=test
|
|
I tested this against our autobuilder and it passed.
|
|
I've never heard of anyone actually using controller discovery.
It adds a great deal of code to the source tree, and a little
bit of complication to ofproto, so this commit removes it.
|
|
Back in 2008 or so, I introduced this extension as a way to provide
information about switch status to the new "switch UI" program. Since
then, the switch UI program has been removed and the important information
that was provided by the switch status extension is now available in the
database, so we might as well get rid of this extension, and that is what
this commit does.
|
|
When the -F option wasn't set, or if it was set to an invalid flow format
for the match, this code would happily select a flow format that did not
select the user's requested match if the switch didn't support an
advanced-enough flow format. This fixes the problem. It also changes
behavior in the case where the user specifies a flow format that cannot
represent the match, changing this from a warning to a fatal error; this
is consistent with -F behavior for flow_mod commands.
|
|
Some Linux network drivers support a feature called "VLAN acceleration",
associated with a data structure called a "vlan_group". A vlan_group is,
abstractly, a dictionary that maps from a VLAN ID (in the range 0...4095)
to a VLAN device, that is, a Linux network device associated with a
particular VLAN, e.g. "eth0.9" for VLAN 9 on eth0.
Some drivers that support VLAN acceleration have bugs that fall roughly
into the following categories:
* Some NICs strip VLAN tags on receive if no vlan_group is registered,
so that the tag is completely lost.
* Some drivers size their receive buffers based on whether a vlan_group
is enabled, meaning that a maximum size packet with a VLAN tag will
not fit if a vlan_group is not configured.
* On transmit some drivers expect that VLAN acceleration will be used
if it is available (which can only be done if a vlan_group is
configured). In these cases, the driver may fail to parse the packet
and correctly setup checksum offloading and/or TSO.
The correct long term solution is to fix these driver bugs. To cope until
then, we have prepared a patch to the Linux kernel network stack that works
around these problems. This commit adds support for the workaround
implemented by that patch.
Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Jesse Gross <jesse@nicira.com>
|
|
|
|
ovs-vsctl will, in upcoming commits, want to more closely examine its
ovsdb_symbol_table structures. This could be done by providing a more
complete API, but it doesn't seem worth it to me. This commit instead goes
the other way, exposing the internals to clients. This commit also
eliminates the ovsdb_symbol_table_find_uncreated() function, which
ovs-vsctl can now implement itself.
|
|
The name 'created' better reflects the actual meaning of this member: in
both ovsdb and ovs-vsctl, it is true if a row has been created with the
symbol's UUID and false otherwise.
|
|
|
|
The QoS and Queue tables weren't mentioned at all, and some of the
tables were in a different order from that in vswitch.xml. This
fixes both.
|
|
The check for uncreated symbols does not rely on anything that happens
during transaction commit, so there is no point in allowing the transaction
to be sent to the database server, only to fail there, before reporting
the problem locally.
|
|
It is conventional for Unix tools to read from standard input if "-" is
specified as a file name. It's easy for "ovs-ofctl add-flows" to behave
this way, too, so this commit implements it.
Suggested-by: Paul Ingram <paul@nicira.com>
|
|
The IP addresses used in the ovs-vlan-test example where more or
less random. This caused a great deal of confusion which hopefully
this patch will remedy.
Also changes the management port to 8080 in the examples because
XenServer uses port 80 on Dom0 for something.
|
|
This "while" loop in do_add_if() is supposed to split up everything after
the interface name with ',' as the delimiter, but it didn't do that
correctly.
Also corrects a typo in the manpage pointed out by Justin Pettit.
|
|
Also adds a test and moves some code around in tests/ to make sure that
OFPROTO_START and OFPROTO_STOP are available in tests/ovs-ofctl.at.
Reported-by: Michael Mao <mmao@nicira.com>
Bug #4566.
|
|
Coverity #10701.
|
|
This utility isn't used anywhere (except INSTALL.Linux), so remove it.
Signed-off-by: Ben Pfaff <blp@nicira.com>
Coverity #10708.
|
|
Coverity pointed out some inconsistencies on tests for whether columnp and
keyp were nonnull. These tests were, at best, confusing, but in fact every
caller always passed nonnull for both parameters, so this commit drops all
of those tests.
Coverity #10715, 10710.
|
|
Coverity #10730
|
|
The stricter validation requires updates to the calls to test-multipath
to supply a valid n_links value. test-multipath doesn't actually use
that value (it runs over different values in an internal "for" loop), so
this doesn't change any behavior.
Also adds a test to exercise each possible multipath_parse() error message.
Reported-by: Reid Price <reid@nicira.com>
Bug #4462.
|
|
Someone (I can't remember who) asked me about this a while ago. I hope
this clarifies.
|
|
Coverity #10716
|
|
We had retained but deprecated the use of the older 'managers' column in the
'Open vSwitch' table for compatibility with applications that might still use
it, but that created more problems than it solved. This commit removes the
'managers' column from the schema, and removes all references to it from the
code, init scripts, documentation, and tests.
|
|
|
|
Running "service openvswitch force-reload-kmod" will now save the kernel
configuration state of Open vSwitch interfaces, stop the vswitch, unload
the kernel module, reload the kernel module, restart the vswitch, and
restore kernel configuration state. It is a reasonably safe way to upgrade
or downgrade the Open vSwitch kernel module on a running system.
Signed-off-by: Ben Pfaff <blp@nicira.com>
|
|
The default format is the same as before (which the testsuite verifies).
The most important use for the new formatting options is --bare, which
outputs a format that is easy to parse from a shell script. An upcoming
patch will start using that.
|
|
This allows listing records that match specified criteria, instead
of just records that have specific names.
This will be used in an upcoming patch, along with --columns, to
list all of the interfaces whose type is 'internal'.
|
|
This allows the user to list just selected columns from a table,
for example just the "name" column.
This will become more useful as additional formatting options
are added in upcoming commits.
|
|
Suggested-by: Ethan Jackson <ethan@nicira.com>
|
|
|
|
Other modules that accept options use this style and I don't see a reason
for the daemon code to be different. The style used by the daemon code
until now runs the risk of ending up with conflicting values accidentally,
which would be confusing.
|