Accepting request 129473 from home:onielsen:Virtualization

- New upstream version 1.7.0
  * Added support to mask nd_target for ICMPv6 neighbor discovery flows.
  * Added the granular link health statistics, 'cfm_health', to an
    interface.
  * Added ability to configure DSCP setting for manager and controller
    connections.
  * Tripled flow setup performance.
- Adjusted openvswitch-1.1.0-stp-fwd-delay.patch (new filename)

OBS-URL: https://build.opensuse.org/request/show/129473
OBS-URL: https://build.opensuse.org/package/show/network/openvswitch?expand=0&rev=13
This commit is contained in:
Marcus Meissner 2012-07-31 19:31:44 +00:00 committed by Git OBS Bridge
parent a166054fc3
commit 4e8d8ef605
6 changed files with 50 additions and 377 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b2451cc8ae5d800e474f2a7d627ef9ea7cebf7f632c7ea09b2976529a9f5b507
size 2088054

View File

@ -1,7 +1,7 @@
diff -uNr old-openvswitch-1.1.0//datapath/brcompat.c openvswitch-1.1.0/datapath/brcompat.c
--- old-openvswitch-1.1.0//datapath/brcompat.c 2011-04-07 17:41:17.000000000 +0200
+++ openvswitch-1.1.0/datapath/brcompat.c 2011-05-17 13:34:26.015407719 +0200
@@ -308,6 +308,19 @@
diff -ruN openvswitch-1.7.0/datapath/brcompat_main.c openvswitch-1.7.0.new/datapath/brcompat_main.c
--- openvswitch-1.7.0/datapath/brcompat_main.c 2012-07-19 00:24:18.000000000 +0200
+++ openvswitch-1.7.0.new/datapath/brcompat_main.c 2012-07-31 13:51:47.319114805 +0200
@@ -327,6 +327,19 @@
return -ENOMEM;
}
@ -21,7 +21,7 @@ diff -uNr old-openvswitch-1.1.0//datapath/brcompat.c openvswitch-1.1.0/datapath/
/* Legacy ioctl's through SIOCDEVPRIVATE. Called with rtnl_lock. */
static int old_dev_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
{
@@ -331,6 +344,12 @@
@@ -350,6 +363,11 @@
case BRCTL_GET_FDB_ENTRIES:
return brc_get_fdb_entries(dev, (void __user *)args[1],
args[2], args[3]);
@ -30,7 +30,6 @@ diff -uNr old-openvswitch-1.1.0//datapath/brcompat.c openvswitch-1.1.0/datapath/
+
+ case BRCTL_SET_BRIDGE_STP_STATE:
+ return brc_stp_set_enabled(dev, args[1]);
+
}
return -EOPNOTSUPP;

3
openvswitch-1.7.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8e3942cbce80048fb2ce8077be5d35bbe50bb12a1feba33d7c1db68ce711eb53
size 2154289

View File

@ -1,353 +0,0 @@
This is based on the following upstream commit, adjusted to apply
against the 1.6.1 release:
From 9b80f761bed9a32c1b0eb22ee3361966057ea973 Mon Sep 17 00:00:00 2001
From: Chris Wright <chrisw@sous-sol.org>
Date: Fri, 9 Mar 2012 09:55:45 -0800
Subject: [PATCH] datapath: omit _mod from module names
This renames the datapath modules:
openvswitch_mod -> openvswitch
brcompat_mod -> brcompat
The first makes the module name consistent with upstream, and the latter
is just for internal consistency. This makes tools, and documentation
refer to a common module name regardless if it's coming from upstream
linux or built from datapath/ as part of a local build.
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Index: openvswitch-1.6.1/INSTALL.Linux
===================================================================
--- openvswitch-1.6.1.orig/INSTALL.Linux
+++ openvswitch-1.6.1/INSTALL.Linux
@@ -194,16 +194,16 @@ Prerequisites section, follow the proced
6. If you built kernel modules, you may load them with "insmod", e.g.:
- % insmod datapath/linux/openvswitch_mod.ko
+ % insmod datapath/linux/openvswitch.ko
You may need to specify a full path to insmod, e.g. /sbin/insmod.
To verify that the modules have been loaded, run "/sbin/lsmod" and
- check that openvswitch_mod is listed.
+ check that openvswitch is listed.
If the "insmod" operation fails, look at the last few kernel log
messages (e.g. with "dmesg | tail"):
- - The message "openvswitch_mod: exports duplicate symbol
+ - The message "openvswitch: exports duplicate symbol
br_should_route_hook (owned by bridge)" means that the bridge
module is loaded. Run "/sbin/rmmod bridge" to remove it.
@@ -212,7 +212,7 @@ Prerequisites section, follow the proced
the kernel, rather than as a module. Open vSwitch does not
support this configuration (see "Build Requirements", above).
- - The message "openvswitch_mod: exports duplicate symbol
+ - The message "openvswitch: exports duplicate symbol
dp_ioctl_hook (owned by ofdatapath)" means that the ofdatapath
module from the OpenFlow reference implementation is loaded.
Run "/sbin/rmmod ofdatapath" to remove it. (You might have to
@@ -222,10 +222,10 @@ Prerequisites section, follow the proced
- Otherwise, the most likely problem is that Open vSwitch was
built for a kernel different from the one into which you are
- trying to load it. Run "modinfo" on openvswitch_mod.ko and on
+ trying to load it. Run "modinfo" on openvswitch.ko and on
a module built for the running kernel, e.g.:
- % /sbin/modinfo openvswitch_mod.ko
+ % /sbin/modinfo openvswitch.ko
% /sbin/modinfo /lib/modules/`uname -r`/kernel/net/bridge/bridge.ko
Compare the "vermagic" lines output by the two commands. If
@@ -235,7 +235,7 @@ Prerequisites section, follow the proced
module loading, please include the output from the "dmesg" and
"modinfo" commands mentioned above.
- There is an optional module parameter to openvswitch_mod.ko called
+ There is an optional module parameter to openvswitch.ko called
vlan_tso that enables TCP segmentation offload over VLANs on NICs
that support it. Many drivers do not expose support for TSO on VLANs
in a way that Open vSwitch can use but there is no way to detect
Index: openvswitch-1.6.1/INSTALL.XenServer
===================================================================
--- openvswitch-1.6.1.orig/INSTALL.XenServer
+++ openvswitch-1.6.1/INSTALL.XenServer
@@ -105,7 +105,7 @@ When Open vSwitch is installed on XenSer
/etc/init.d/openvswitch runs early in boot. It does roughly the
following:
- * Loads the OVS kernel module, openvswitch_mod.
+ * Loads the OVS kernel module, openvswitch.
* Starts ovsdb-server, the OVS configuration database.
Index: openvswitch-1.6.1/INSTALL.bridge
===================================================================
--- openvswitch-1.6.1.orig/INSTALL.bridge
+++ openvswitch-1.6.1/INSTALL.bridge
@@ -34,9 +34,9 @@ kernel bridge module.
2. Load the brcompat kernel module (which was built in step 1), e.g.:
- % insmod datapath/linux/brcompat_mod.ko
+ % insmod datapath/linux/brcompat.ko
- (openvswitch_mod.ko should already have been loaded.)
+ (openvswitch.ko should already have been loaded.)
3. Start ovs-brcompatd:
Index: openvswitch-1.6.1/datapath/brcompat.c
===================================================================
--- openvswitch-1.6.1.orig/datapath/brcompat.c
+++ openvswitch-1.6.1/datapath/brcompat.c
@@ -542,7 +542,7 @@ static int __init brc_init(void)
/* Set the bridge ioctl handler */
brioctl_set(brc_ioctl_deviceless_stub);
- /* Set the openvswitch_mod device ioctl handler */
+ /* Set the openvswitch device ioctl handler */
ovs_dp_ioctl_hook = brc_dev_ioctl;
/* Randomize the initial sequence number. This is not a security
@@ -591,7 +591,7 @@ MODULE_LICENSE("GPL");
/*
* In kernels 2.6.36 and later, Open vSwitch can safely coexist with
* the Linux bridge module, but it does not make sense to load both bridge and
- * brcompat_mod, so this prevents it.
+ * brcompat, so this prevents it.
*/
BRIDGE_MUTUAL_EXCLUSION;
#endif
Index: openvswitch-1.6.1/datapath/compat.h
===================================================================
--- openvswitch-1.6.1.orig/datapath/compat.h
+++ openvswitch-1.6.1/datapath/compat.h
@@ -58,12 +58,12 @@ static inline void skb_clear_rxhash(stru
* exporting br_should_route_hook. Because the bridge module also exports the
* same symbol, the module loader will refuse to load both modules at the same
* time (e.g. "bridge: exports duplicate symbol br_should_route_hook (owned by
- * openvswitch_mod)").
+ * openvswitch)").
*
* Before Linux 2.6.36, Open vSwitch cannot safely coexist with the Linux
- * bridge module, so openvswitch_mod uses this macro in those versions. In
- * Linux 2.6.36 and later, Open vSwitch can coexist with the bridge module, but
- * it makes no sense to load both bridge and brcompat_mod, so brcompat_mod uses
+ * bridge module, so openvswitch uses this macro in those versions. In
+ * Linux 2.6.36 and later, Open vSwitch can coexist with the bridge module,
+ * but it makes no sense to load both bridge and brcompat, so brcompat uses
* this macro in those versions.
*
* The use of "typeof" here avoids the need to track changes in the type of
Index: openvswitch-1.6.1/datapath/linux/Kbuild.in
===================================================================
--- openvswitch-1.6.1.orig/datapath/linux/Kbuild.in
+++ openvswitch-1.6.1/datapath/linux/Kbuild.in
@@ -24,10 +24,10 @@ EXTRA_CFLAGS += -include $(builddir)/kco
# right place, even though it's conceptually incorrect.
NOSTDINC_FLAGS += -I$(top_srcdir)/include -I$(srcdir)/compat -I$(srcdir)/compat/include
-obj-m := $(patsubst %,%_mod.o,$(build_modules))
+obj-m := $(patsubst %,%.o,$(build_modules))
define module_template
-$(1)_mod-y = $$(notdir $$(patsubst %.c,%.o,$($(1)_sources)))
+$(1)-y = $$(notdir $$(patsubst %.c,%.o,$($(1)_sources)))
endef
$(foreach module,$(build_modules),$(eval $(call module_template,$(module))))
Index: openvswitch-1.6.1/datapath/linux/Makefile.main.in
===================================================================
--- openvswitch-1.6.1.orig/datapath/linux/Makefile.main.in
+++ openvswitch-1.6.1/datapath/linux/Makefile.main.in
@@ -29,7 +29,7 @@ check: all
installcheck:
mostlyclean:
clean:
- rm -f *.o *.ko *_mod.* Module.symvers *.cmd kcompat.h.new
+ rm -f *.o *.ko *.mod.* Module.symvers *.cmd kcompat.h.new
for d in $(build_links); do if test -h $$d; then rm $$d; fi; done
distclean: clean
rm -f kcompat.h
Index: openvswitch-1.6.1/datapath/linux/compat/genetlink-brcompat.c
===================================================================
--- openvswitch-1.6.1.orig/datapath/linux/compat/genetlink-brcompat.c
+++ openvswitch-1.6.1/datapath/linux/compat/genetlink-brcompat.c
@@ -1,5 +1,5 @@
/* We fix grp->id to 32 so that it doesn't collide with any of the multicast
- * groups selected by openvswitch_mod, which uses groups 16 through 31.
+ * groups selected by openvswitch, which uses groups 16 through 31.
* Collision isn't fatal--multicast listeners should check that the family is
* the one that they want and discard others--but it wastes time and memory to
* receive unwanted messages. */
Index: openvswitch-1.6.1/datapath/vport-netdev.c
===================================================================
--- openvswitch-1.6.1.orig/datapath/vport-netdev.c
+++ openvswitch-1.6.1/datapath/vport-netdev.c
@@ -423,7 +423,7 @@ const struct vport_ops ovs_netdev_vport_
* In kernels earlier than 2.6.36, Open vSwitch cannot safely coexist with the
* Linux bridge module, because there is only a single bridge hook function and
* only a single br_port member in struct net_device, so this prevents loading
- * both bridge and openvswitch_mod at the same time.
+ * both bridge and openvswitch at the same time.
*/
BRIDGE_MUTUAL_EXCLUSION;
#endif
Index: openvswitch-1.6.1/debian/dkms.conf.in
===================================================================
--- openvswitch-1.6.1.orig/debian/dkms.conf.in
+++ openvswitch-1.6.1/debian/dkms.conf.in
@@ -1,8 +1,8 @@
PACKAGE_NAME="openvswitch"
PACKAGE_VERSION="__VERSION__"
MAKE="./configure --with-linux='${kernel_source_dir}' && make -C datapath/linux"
-BUILT_MODULE_NAME[0]=openvswitch_mod
-BUILT_MODULE_NAME[1]=brcompat_mod
+BUILT_MODULE_NAME[0]=openvswitch
+BUILT_MODULE_NAME[1]=brcompat
BUILT_MODULE_LOCATION[0]=datapath/linux/
BUILT_MODULE_LOCATION[1]=datapath/linux/
DEST_MODULE_LOCATION[0]=/kernel/drivers/net/openvswitch/
Index: openvswitch-1.6.1/utilities/ovs-ctl.8
===================================================================
--- openvswitch-1.6.1.orig/utilities/ovs-ctl.8
+++ openvswitch-1.6.1/utilities/ovs-ctl.8
@@ -282,8 +282,8 @@ from other errors that may occur when ru
.
.PP
By default the \fBload\-kmod\fR command attempts to load the
-openvswitch_mod kernel module. If the \fB\-\-brcompat\fR option is
-specified then the brcompat_mod kernel module is also loaded.
+openvswitch kernel module. If the \fB\-\-brcompat\fR option is
+specified then the brcompat kernel module is also loaded.
.
.SH "The ``enable\-protocol'' command"
.
Index: openvswitch-1.6.1/utilities/ovs-ctl.in
===================================================================
--- openvswitch-1.6.1.orig/utilities/ovs-ctl.in
+++ openvswitch-1.6.1/utilities/ovs-ctl.in
@@ -31,14 +31,15 @@ done
## ----- ##
insert_openvswitch_mod_if_required () {
- # If openvswitch_mod is already loaded then we're done.
- test -e /sys/module/openvswitch_mod && return 0
+ # If openvswitch is already loaded then we're done.
+ test -e /sys/module/openvswitch -o -e /sys/module/openvswitch_mod && \
+ return 0
- # Load openvswitch_mod. If that's successful then we're done.
- action "Inserting openvswitch module" modprobe openvswitch_mod && return 0
+ # Load openvswitch. If that's successful then we're done.
+ action "Inserting openvswitch module" modprobe openvswitch && return 0
# If the bridge module is loaded, then that might be blocking
- # openvswitch_mod. Try to unload it, if there are no bridges.
+ # openvswitch. Try to unload it, if there are no bridges.
test -e /sys/module/bridge || return 1
bridges=`echo /sys/class/net/*/bridge | sed 's,/sys/class/net/,,g;s,/bridge,,g'`
if test "$bridges" != "*"; then
@@ -47,17 +48,17 @@ insert_openvswitch_mod_if_required () {
fi
action "removing bridge module" rmmod bridge || return 1
- # Try loading openvswitch_mod again.
- action "Inserting openvswitch module" modprobe openvswitch_mod
+ # Try loading openvswitch again.
+ action "Inserting openvswitch module" modprobe openvswitch
}
insert_brcompat_mod_if_required () {
if test -e /sys/module/bridge; then
- log_warning_msg "bridge module is loaded, not loading brcompat_mod"
+ log_warning_msg "bridge module is loaded, not loading brcompat"
return 1
fi
- test -e /sys/module/brcompat_mod && return 0
- action "Inserting brcompat module" modprobe brcompat_mod
+ test -e /sys/module/brcompat -o -e /sys/module/brcompat_mod && return 0
+ action "Inserting brcompat module" modprobe brcompat
}
insert_mod_if_required () {
@@ -286,11 +287,16 @@ force_reload_kmod () {
action "Removing datapath: $dp" ovs-dpctl del-dp "$dp"
done
+ # try both old and new names in case this is post upgrade
if test -e /sys/module/brcompat_mod; then
action "Removing brcompat module" rmmod brcompat_mod
+ elif test -e /sys/module/brcompat; then
+ action "Removing brcompat module" rmmod brcompat
fi
if test -e /sys/module/openvswitch_mod; then
action "Removing openvswitch module" rmmod openvswitch_mod
+ elif test -e /sys/module/openvswitch; then
+ action "Removing openvswitch module" rmmod openvswitch
fi
start
Index: openvswitch-1.6.1/vswitchd/ovs-brcompatd.8.in
===================================================================
--- openvswitch-1.6.1.orig/vswitchd/ovs-brcompatd.8.in
+++ openvswitch-1.6.1/vswitchd/ovs-brcompatd.8.in
@@ -36,7 +36,7 @@ to find it.
.so lib/leak-checker.man
.
.SH NOTES
-\fBovs\-brcompatd\fR requires the \fBbrcompat_mod.ko\fR kernel module to be
+\fBovs\-brcompatd\fR requires the \fBbrcompat.ko\fR kernel module to be
loaded.
.SH "SEE ALSO"
.BR ovs\-appctl (8),
Index: openvswitch-1.6.1/vswitchd/ovs-brcompatd.c
===================================================================
--- openvswitch-1.6.1.orig/vswitchd/ovs-brcompatd.c
+++ openvswitch-1.6.1/vswitchd/ovs-brcompatd.c
@@ -456,7 +456,7 @@ handle_fdb_query_cmd(struct ofpbuf *buff
uint32_t seq;
int error;
- /* Parse the command received from brcompat_mod. */
+ /* Parse the command received from brcompat. */
error = parse_command(buffer, &seq, &linux_name, NULL, &count, &skip);
if (error) {
return error;
Index: openvswitch-1.6.1/xenserver/openvswitch-xen.spec.in
===================================================================
--- openvswitch-1.6.1.orig/xenserver/openvswitch-xen.spec.in
+++ openvswitch-1.6.1/xenserver/openvswitch-xen.spec.in
@@ -49,7 +49,7 @@ License: ASL 2.0
Release: 1
Source: openvswitch-%{openvswitch_version}.tar.gz
Buildroot: /tmp/openvswitch-xen-rpm
-Requires: openvswitch_mod.ko.%{module_abi_version}
+Requires: openvswitch.ko.%{module_abi_version}
%description
Open vSwitch provides standard network bridging functions augmented with
@@ -60,7 +60,7 @@ traffic.
Summary: Open vSwitch kernel module
Group: System Environment/Kernel
License: GPLv2
-Provides: %{name}-modules-%{kernel_flavor} = %{kernel_version}, openvswitch_mod.ko.%{module_abi_version}
+Provides: %{name}-modules-%{kernel_flavor} = %{kernel_version}, openvswitch.ko.%{module_abi_version}
Requires: kernel-%{kernel_name} = %{kernel_version}
%description %{module_package}
@@ -454,5 +454,5 @@ exit 0
%exclude /usr/share/openvswitch/python/ovs/db/*.py[co]
%files %{module_package}
-/lib/modules/%{xen_version}/extra/openvswitch/openvswitch_mod.ko
-%exclude /lib/modules/%{xen_version}/extra/openvswitch/brcompat_mod.ko
+/lib/modules/%{xen_version}/extra/openvswitch/openvswitch.ko
+%exclude /lib/modules/%{xen_version}/extra/openvswitch/brcompat.ko

View File

@ -1,3 +1,32 @@
-------------------------------------------------------------------
Tue Jul 31 12:41:19 UTC 2012 - on@morlock.nu
- New upstream version 1.7.0
* kernel modules are renamed. openvswitch_mod.ko is now
openvswitch.ko and brcompat_mod.ko is now brcompat.ko.
* Increased the number of NXM registers to 8.
* Added ability to configure DSCP setting for manager and controller
connections. By default, these connections have a DSCP value of
Internetwork Control (0xc0).
* Added the granular link health statistics, 'cfm_health', to an
interface.
* OpenFlow:
- Added support to mask nd_target for ICMPv6 neighbor discovery flows.
- Added support for OpenFlow 1.3 port description (OFPMP_PORT_DESC)
multipart messages.
* ovs-ofctl:
- Added the "dump-ports-desc" command to retrieve port
information using the new port description multipart messages.
* ovs-test:
- Added support for spawning ovs-test server from the client.
- Now ovs-test is able to automatically create test bridges and ports.
* "ovs-dpctl dump-flows" now prints observed TCP flags in TCP flows.
* Tripled flow setup performance.
* The "coverage/log" command previously available through ovs-appctl
has been replaced by "coverage/show". The new command replies with
coverage counter values, instead of logging them.
- Adjusted openvswitch-1.1.0-stp-fwd-delay.patch (new filename)
-------------------------------------------------------------------
Thu Jul 26 11:47:36 UTC 2012 - rhafer@suse.com

View File

@ -29,13 +29,13 @@
%bcond_with pyside
Name: openvswitch
Version: 1.6.1
Version: 1.7.0
Release: 1
License: Apache
License: Apache-2.0
Summary: An open source, production quality, multilayer virtual switch
Url: http://openswitch.org/
Group: Productivity/Networking/System
Source0: http://openvswitch.org/releases/openvswitch-1.6.1.tar.gz
Source0: http://openvswitch.org/releases/openvswitch-1.7.0.tar.gz
Source1: preamble
Source2: openvswitch-switch.init
@ -43,12 +43,8 @@ Source3: openvswitch-switch.template
Source4: openvswitch-switch.logrotate
Source5: openvswitch-controller.init
# PATCH-FEATURE-OPENSUSE openvswitch-1.3.0-suse.patch -- /etc/sysconfig configuration options for openvswitch
#Patch0: %name-1.3.0-suse.patch
# PATCH-FEATURE-UPSTREAM openvswitch-1.1.0-stp-fwd-delay.patch -- Set STP bridge forward delay
Patch1: %name-1.1.0-stp-fwd-delay.patch
# PATCH-FEATURE-UPSTREAM openvswitch-openvswitch-mod-rename.patch -- Kernel Modules renamed (for 12.2 and newer)
Patch2: %name-mod-rename.patch
# PATCH-FEATURE-UPSTREAM openvswitch-1.7.0-stp-fwd-delay.patch -- Set STP bridge forward delay
Patch1: %name-1.7.0-stp-fwd-delay.patch
BuildRequires: autoconf automake libtool
BuildRequires: gcc
BuildRequires: make
@ -208,11 +204,7 @@ Open vSwitch is a full-featured software-based Ethernet switch.
%prep
%setup -q
#%patch0 -p1
%patch1 -p1
%if 0%{?build_in_kernel_kmp}
%patch2 -p1
%endif
set -- *
mkdir source
@ -335,6 +327,11 @@ rmdir %{buildroot}%{_datadir}/%{name}/python
%{_datadir}/openvswitch/scripts/ovs-bugtool-lacp-show
%{_datadir}/openvswitch/scripts/ovs-bugtool-tc-class-show
%{_datadir}/openvswitch/scripts/ovs-bugtool-ovsdb-dump
%{_datadir}/openvswitch/scripts/ovs-bugtool-bond-show
%{_datadir}/openvswitch/scripts/ovs-bugtool-coverage-show
%{_datadir}/openvswitch/scripts/ovs-bugtool-daemons-ver
%{_datadir}/openvswitch/scripts/ovs-bugtool-vsctl-show
%{_datadir}/openvswitch/scripts/ovs-check-dead-ifs
%{_mandir}/man1/ovs-benchmark.1.gz
%{_mandir}/man1/ovsdb-client.1.gz
%{_mandir}/man8/ovs-appctl.8.gz
@ -398,8 +395,9 @@ rmdir %{buildroot}%{_datadir}/%{name}/python
%files -n ovsdbmonitor
%defattr(-,root,root)
%{_bindir}/ovsdbmonitor
%dir %{_datadir}/openvswitch/ovsdbmonitor
%{_datadir}/openvswitch/ovsdbmonitor/*
%dir %{_datadir}/ovsdbmonitor
%{_datadir}/applications/ovsdbmonitor.desktop
%{_datadir}/ovsdbmonitor/*
%{_mandir}/man1/ovsdbmonitor.1.gz
%changelog