aboutsummaryrefslogtreecommitdiff
path: root/AUTHORS
AgeCommit message (Collapse)Author
2012-08-21bond: Tag flows according to their hash bucket, not just their slave.Ben Pfaff
The bonding code is supposed to tag flows two ways: - According to the chosen bond slave, to make it easy to invalidate all of the flows assigned to a given slave. - According to the hash value for a flow, to make it easy to invalidate all of the flows that hash into the same bucket. However, the code wasn't actually applying the hash-based tags. This meant that rebalancing didn't take effect immediately, and so after rebalancing we could get log messages like this: inconsistency in subfacet (actions were: 5) (correct actions: 4) specifying some flow that was moved by the rebalance. This commit fixes the problem by applying the hash-based tags. Bug #12847. Reported-by: Pratap Reddy <preddy@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Ethan Jackson <ethan@nicira.com>
2012-07-09debian: Add "netbase" dependency for /etc/protocols.Ben Pfaff
ovs-ctl.in uses /etc/protocols, which is in the "netbase" package, so a dependency is required. Debian bug #680537. CC: 680537@bugs.debian.org Reported-by: Bastian Blank <waldi@debian.org> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-06-26lib: Do not assume sig_atomic_t is int.Ed Maste
On FreeBSD sig_atomic_t is long, which causes the comparison in fatal_signal_run to be true when no signal has been reported. Signed-off-by: Ed Maste <emaste@freebsd.org> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-06-19debian: Make DKMS automatically build for running kernel.Ben Pfaff
By default DKMS doesn't build on demand for each kernel booted or updated. Adding AUTOINSTALL=yes gives it this behavior. Based on a small sample of Debian packages and how-to guides for Ubuntu, AUTOINSTALL=yes is what most packages use and what users expect. Fix-suggested-by: Kirill Kabardin Reported-by: Ralf Heiringhoff <ralf@frosty-geek.net> Reported-at: https://bugs.launchpad.net/bugs/962189 Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-05-16dpif-netdev: allow for proper destruction of netdev datapathsGiuseppe Lettieri
Until now, bridges with datapath_type=netdev did not destroy the datapath when deleted. In particular, the tap device implementing the internal interface was not close()d, and therefore the tap persists until ovs-vswitchd exit()s. This behaviour was caused by the missing callback for 'enumerate' in the dpif-netdev class. Without this callback 'bridge_reconfigure' failed to realize that there are datapaths with no bridge, and thus cannot destroy them. Providing an 'enumerate' callback fixes this. Signed-off-by: Giuseppe Lettieri <g.lettieri@iet.unipi.it> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-05-09rhel: Add timeouts to network scripts.Brian Kruger
If the daemon(s) aren't running for whatever reason, the RHEL ovs ifup/ifdown scripts don't take that into account and an attempt to reboot a system could take forever. (literally. endless loop!) Here are a couple of patches (one of ifup, one for ifdown) to add timeouts (10 seconds), because it runs per interface you have configured and that could take awhile to reboot a system if needed. Signed-off-by: Brian Kruger <bkruger+ovsdev@gmail.com> [blp@nicira.com fixed up a conflict against master] Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-03-21debian: Move PKI directory to FHS-compliant location.Ben Pfaff
The PKI directory is mutable state, so it should be in /var, not in /usr. This commit changes its location and, on systems upgraded from earlier versions, moves the existing PKI and leaves behind a symlink. CC: 661090@bugs.debian.org Reported-by: Andreas Beckmann <debian@abeckmann.de> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-03-12tests: Skip "strings at least 2 characters long" test for narrow Python.Ben Pfaff
Narrow Python can't handle Unicode characters outside the BMP, so skip the test. Reported-by: Michael Shigorin <mike@osdn.org.ua> Tested-by: Michael Shigorin <mike@osdn.org.ua> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-03-05vswitchd: Document behavior of 802.1p priorities with VLAN splinters.Ben Pfaff
Reported-by: likunyun <kunyunli@hotmail.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-03-05bridge: Remove unwanted ports at time of ofproto creation.Ben Pfaff
The reconfiguration code only deleted unwanted ports for bridges that had been created in previous (re)configurations. In fact, we should run this step even for bridges that are newly added, e.g. to delete ports that were added by a previous run of ovs-vswitchd and deleted from the database between runs. Before this commit, the following left "int" in datapath br0. After this commit, "int" is properly deleted: 1. With ovs-vswitchd running: # ovs-vsctl add-br br0 # ovs-vsctl add-port br0 int -- set interface int type=internal 2. Kill ovs-vswitchd, then: # ovs-vsctl --no-wait -- del-port br0 int 3. Restart ovs-vswitchd. Bug #9957. Reported-by: Hiroshi Tanaka <htanaka@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-02-15xenserver: Fix iteration of dictionary.Dominic Curran
Fix bug in commit 3249bb907a1dab9b0, which incorrectly assumed that get_all_records_where() returned a list. It in fact returns a dictionary and the list iteratory needs to change to account for this. Thanks to Nicira for pointing this out. NIC-454. Reported-by: David Tsai <dtsai@nicira.com> Acked-by: Rob Hoes <rob.hoes@citrix.com> Signed-off-by: Dominic Curran <dominic.curran@citrix.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-02-13debian: Look in /lib/modules instead of /usr/src for DKMS kernel sources.Ben Pfaff
DKMS packages usually look in /lib/modules for kernel sources, since that is the "standard" location, but our packages was looking directly in /usr/src. This fixes the problem. Reported-by: Alban Browaeys <prahal@yahoo.com> Tested-by: Alban Browaeys <prahal@yahoo.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-02-08ofproto-dpif: Don't output to in_port even if in_port is OFPP_LOCAL.Aaron Rosen
Signed-off-by: Aaron Rosen <arosen@clemson.edu> [Ben Pfaff added the test.] Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-02-06debian: Don't install Python modules for obsolete Python versions.Ben Pfaff
Python 2.4 is obsolete, not present in Debian squeeze or sid, so don't install Python modules for it. It would be better to just put the files directly into /usr/share/pyshared/ovs/, instead of in site-packages for some specific Python version, but this causes problems for builds on squeeze, as documented in commit bc3aa0bf5 (debian: Make python-openvswitch packaging work with squeeze dh_python2.): The dh_python2 helper in Debian squeeze has a limitation that is not mentioned anywhere, as far as I can tell: Python files must be in /usr/lib/python#.#/site-packages to be installed. The version in Debian wheezy does not have the same limitation. This meant that building the Debian packages on squeeze silently produced a broken python-openvswitch package, whereas building the same thing on wheezy built a working package. This fixes the problem by putting the .py files where squeeze expects them. It works on wheezy too. A before-and-after "debdiff" shows that the only significant effect of this commit is to drop python2.4 symlinks. CC: horms@debian.org Reported-by: Luca Falavigna <ftpmaster@debian.org> Signed-off-by: Ben Pfaff <blp@nicira.com>
2012-01-06ofproto-dpif: Keep subfacets longer to avoid assert-fail in facet_account().Ben Pfaff
If a subfacet expired when its facet still had statistics that had not yet been pushed into the rule, and the facet either used the "normal" action or the bridge contained a bond port, then facet_account() would be called after the last subfacet was removed from its facet's list of subfacets, triggering an assertion failure in list_front(). This fixes the problem by always running facet_flush_stats() (which calls facet_account()) before deleting the last subfacet from a facet. This problem took a while to surface because subfacets usually expire only long after their statistics have been pushed into the rule. Signed-off-by: Ben Pfaff <blp@nicira.com> Reported-by: Mike Kruze <mkruze@nicira.com> Bug #9074.
2012-01-04ofproto: Fix detection of in-use VLANs based on the flow table.Ben Pfaff
I swear I tested this, but the code was obviously wrong. Signed-off-by: Ben Pfaff <blp@nicira.com> Reported-by: Brendan Kelley <bkelley@nicira.com> Bug #8729.
2011-12-12bridge: Enable support for access and native VLAN ports on bonds.Ben Pfaff
Since Open vSwitch's inception we've disabled the use of bonds as access ports, for no particularly good reason. This also unintentionally prevented bonds from being used as native VLAN ports. This commit removes the code that prevented using bonds these ways Reported-and-tested-by: "Michael A. Collins" <mike.a.collins@ark-net.org> Signed-off-by: Ben Pfaff <blp@nicira.com>
2011-12-09AUTHORS: Add Chris Wright.Ben Pfaff
2011-12-01INSTALL.XenServer: Update instructions.Ben Pfaff
The instructions hadn't been properly updated to match current XenServer releases. Reported-by: Ramana Reddy <gtvrreddy@gmail.com>
2011-11-17rhel: Add Red Hat network scripts integration.Alexey I. Froloff
[Spec file changes and some documentation updates by Ben Pfaff.]
2011-11-14rhel: Add ability to enable bridge compatibility mode in ↵Tyler Coumbes
/etc/sysconfig/openvswitch Add the ability to enable bridge compatibility mode through BRCOMPAT variable in /etc/sysconfig/openvswitch for the rhel build. When BRCOMPAT is set to 'yes' the brcompat_mod will be loaded and ovs-brcompatd daemon will be started.
2011-11-10debian: Strip epoch from version number used in directory names.Ben Pfaff
This doesn't fix a visible bug, since there's no epoch in the Open vSwitch version used in Debian, but some Nicira internal build scripts were inserting an epoch so it was visible in our builds. Reported-by: Edwin Chiu <echiu@nicira.com>
2011-11-02stream: Fix uninitialized values in stream_init().Ben Pfaff
stream_init() didn't initialize the remote_ip, remote_port, local_ip, or local_port members of the stream, so "unix" streams that don't have any of those would get random values instead. Reported-by: "Voravit T." <voravit@kth.se> Reported-by: Jari Sundell <sundell.software@gmail.com>
2011-11-01AUTHORS: Add Edward Tomasz Napierała.Ben Pfaff
2011-10-31netdev-vport: Again allow "tap" devices to be added to bridges.Ben Pfaff
I did not check that tap devices otherwise work. This at least allows them to be part of a bridge again. Reported-by: Janis Hamme <janis.hamme@student.kit.edu>
2011-10-18ofp-util: Avoid misaligned memory access in ofputil_encode_packet_in().Ben Pfaff
Reported-by: Murphy McCauley <murphy.mccauley@gmail.com>
2011-10-17bond: Demote active-backup WARN to DBG.Ben Pfaff
This log message comes up for packets that are flooded through the network. If the upstream switch doesn't realize that an active-backup bond is in use, and there is significant packet flooding in the network, then we will get a lot of these messages. (This message doesn't get logged for multicast or broadcast packets since they get dropped earlier in the function.) Reported-by: Eivind Bulie Haanaes Bug-report: http://forums.citrix.com/thread.jspa?messageID=1589125 CC: Paul Fazzone <pfazzone@nicira.com>
2011-10-03debian: Make python-openvswitch packaging work with squeeze dh_python2.Ben Pfaff
The dh_python2 helper in Debian squeeze has a limitation that is not mentioned anywhere, as far as I can tell: Python files must be in /usr/lib/python#.#/site-packages to be installed. The version in Debian wheezy does not have the same limitation. This meant that building the Debian packages on squeeze silently produced a broken python-openvswitch package, whereas building the same thing on wheezy built a working package. This fixes the problem by putting the .py files where squeeze expects them. It works on wheezy too. Bug #7510. Reported-by: Michael Hu <mhu@nicira.com> Tested-by: Simon Horman <horms@verge.net.au>
2011-09-29bridge: Clear out all Interface fields when an interface cannot be created.Ben Pfaff
When an Interface record is invalid (for example, when the interface that it specifies does not exist and cannot be created), ovs-vswitchd would leave any pre-existing data in its columns, except that it would set the ofport column to -1 to indicate the error. This was sometimes confusing because, for example, the lacp_current field could still be set to "true" if LACP has previously been active and up-to-date. This commit changes ovs-vswitchd to reset all such data to its default values when an interface is invalid. Bug #7450. Reported-by: Duffie Cooley <dcooley@nicira.com> Bug #7491. Reported-by: Ethan Jackson <ethan@nicira.com> Release Notes #7500. Reported-by: Keith Amidon <keith@nicira.com>
2011-09-22ovs-bugtool: Fix --unlimited option.Daniel Roman
Bug #5443.
2011-09-20debian: Correct path to ovs-controller in init script.Ben Pfaff
Reported-by: George Shuklin <amarao@desunote.ru> Bug-report: http://bugs.debian.org/642206
2011-09-15AUTHORS: Add Tyler Coumbes <coumbes@gmail.com>.Ben Pfaff
2011-09-15ovs-vsctl: Improve usage message.Ben Pfaff
Bug #7332. Reported-by: Gordon Good <ggood@nicira.com>
2011-08-25debian: Apply Ubuntu patch to add DKMS support.Chuck Short
I tested that installing openvswitch-datapath-dkms worked OK on my own Debian machine. The bulk of this patch is taken from downstream Ubuntu DKMS support written by Chuck Short <zulcss@ubuntu.com>, version 1.2.0-1ubuntu1. I made the following changes: * Update debian/.gitignore. * Update debian/automake.mk. * Correct description in debian/control (it was a cut-and-paste from the openvswitch-datapath-source description without editing). * Fix up for --with-l26 to --with-linux and datapath/linux-2.6 to datapath/linux transitions. CC: Chuck Short <zulcss@ubuntu.com> CC: Dave Walker <DaveWalker@ubuntu.com> Acked-by: Simon Horman <horms@verge.net.au>
2011-08-17INSTALL.Linux: Fix up reference to old option name --with-l26.Philippe Jung
2011-08-09Option to forward BPDU (Ethernet control class) framesSanjay Sane
Currently, a NORMAL action bridge drops reserved-multicast-mac addresses; 01-80-c2-00-00-[f0:ff]. A node that does not implement STP should have an option to forward such frames. This commit proposes to have a configuration option to allow forwarding of BPDU class frames. To ensure backward compatibility, this option is disabled by default. This config can be set using bridge's other-config column, for e.g ovs-vsctl set bridge br0 other-config:forward-bpdu=true Changing this option can revalidate all flows in a software-OVS implementation (ofproto-dpif) -------- unit tests: ------------ make config changes, test runtime behavior -- test runtime behavior -- continuously send packets to br0 with dest-mac=01:80:c2:00:00:00 ovs-dpctl dump-flows br0 ovs-vsctl set bridge br0 other-config:forward-bpdu=true ovs-dpctl dump-flows br0 ovs-vsctl set bridge br0 other-config:forward-bpdu=false ovs-dpctl dump-flows br0 ovs-vsctl set bridge br0 other-config:forward-bpdu=true ovs-dpctl dump-flows br0 ovs-vsctl remove bridge br0 other-config forward-bpdu=true ovs-dpctl dump-flows br0 --result-- ovs-dpctl dump-flows br0 in_port(1),eth(src=00:0c:29:d1:39:42,dst=01:80:c2:00:00:00), packets:29550, bytes:1773000, used:0.004s, actions:drop ovs-vsctl set bridge br0 other-config:forward-bpdu=true ovs-dpctl dump-flows br0 in_port(1),eth(src=00:0c:29:d1:39:42,dst=01:80:c2:00:00:00), packets:8209, bytes:492540, used:0.000s, actions:2,0 ovs-vsctl set bridge br0 other-config:forward-bpdu=false ovs-dpctl dump-flows br0 in_port(1),eth(src=00:0c:29:d1:39:42,dst=01:80:c2:00:00:00), packets:19, bytes:1140, used:0.000s, actions:drop ovs-vsctl set bridge br0 other-config:forward-bpdu=true ovs-dpctl dump-flows br0 in_port(1),eth(src=00:0c:29:d1:39:42,dst=01:80:c2:00:00:00), packets:29, bytes:1740, used:0.000s, actions:2,0 ovs-vsctl remove bridge br0 other-config forward-bpdu=true ovs-dpctl dump-flows br0 in_port(1),eth(src=00:0c:29:d1:39:42,dst=01:80:c2:00:00:00), packets:0, bytes:0, used:never, actions:drop Bug #6624 Reported-by: Niklas Andersson <nandersson@nicira.com>
2011-08-04lib: Adapt headers for use in C++.Casey Barker
This commit makes several library headers suitable for inclusion in C++. It adds [extern "C"] guards and makes minor changes to fix casting and keyword issues.
2011-07-28Datapath action should not refer to controllerpravin shelar
ODP_ACTION_ATTR_CONTROLLER in the kernel actually sends packets to userspace, not the controller. To make it generic rename this action to ODP_ACTION_ATTR_USERSPACE. Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
2011-07-27ovs-ofctl: New --readd option for "replace-flows".Ben Pfaff
This is useful for resetting flows' byte and packet counters to 0. Suggested-by: Jed Daniels <openvswitch@jeddaniels.com>
2011-07-26debian: Modernize use of dh_install.Ben Pfaff
Originally I intended this as just a cleanup, but as a side effect it also installs some files from the install tree in debian/tmp instead of from _debian. This should avoid a reported problem in which ovs-bugtool was being created in the source directory instead of the build directory (I still don't see why this happened). Reported-by: Sébastien RICCIO <sr@swisscenter.com> Tested-by: Sébastien RICCIO <sr@swisscenter.com> Acked-by: Simon Horman <horms@verge.net.au> CC: Simon Horman <horms@verge.net.au>
2011-06-15PORTING: Improve second diagram.Ben Pfaff
Suggested-by: Peter Phaal <peter.phaal@inmon.com>
2011-06-14AUTHORS: Add Hao Zheng <hzheng@nicira.com>.Ben Pfaff
2011-06-14python: Fix "make install" on systems without Python.Ben Pfaff
Reported-by: 冯全树(Crab) <fqs888@126.com>
2011-06-01learning-switch: Don't limit message queued by --with-flows.Ben Pfaff
queue_tx() intentionally limits the number of outstanding OpenFlow messages queued to the switch. This was unintentionally being applied to the messages queued to the switch at startup by ovs-ofctl's --with-flows command. This patch should fix the problem, by calling rconn_send() directly instead of through queue_tx(). Ahmed reported that with this patch there was still a problem when 30,000 flows were specified in the file. Reported-by: Ahmed Bilal <numan252@gmail.com>
2011-05-18Add tar.gz output option in ovs-bugtoolShih-Hao Li
2011-05-04ovs-brcompatd: Document bug.Ben Pfaff
Reported-by: Gregor Schaffrath <grsch@net.t-labs.tu-berlin.de>
2011-05-03xenserver: Use .../extra not .../kernel/extra for kernel modules.Ben Pfaff
On XenServer, depmod.conf causes modules in /lib/modules/$(uname -r)/extra to take priority over standard modules. Unfortunately, we were installing our modules in /lib/modules/$(uname -r)/kernel/extra, which isn't special. This commit fixes the problem. Signed-off-by: Ben Pfaff <blp@nicira.com> Reported-by: Bob Ball <bob.ball@citrix.com>
2011-04-21INSTALL.Linux: Mention that SSL options require building with SSL support.Ben Pfaff
Reported-by: Aaron Rosen <arosen@clemson.edu>
2011-04-18Fix calls to ctype functions.Ben Pfaff
The ctype functions often need casts to be fully C standards compliant. Here's the full explanation that I used to post to comp.lang.c from time to time when the issue came up: With the to*() and is*() functions, you should be careful to cast `char' arguments to `unsigned char' before calling them. Type `char' may be signed or unsigned, depending on your compiler or its configuration. If `char' is signed, then some characters have negative values; however, the arguments to is*() and to*() functions must be nonnegative (or EOF). Casting to `unsigned char' fixes this problem by forcing the character to the corresponding positive value. This fixes the following warnings from some version of GCC: lib/ofp-parse.c:828: warning: array subscript has type 'char' lib/ofp-print.c:617: warning: array subscript has type 'char' Reported-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
2011-04-14vswitchd: Document how to disable inactivity probes.Ben Pfaff
This has always been implemented but it was not documented until now. Reported-by: Alex Yip <alex@nicira.com>