Hello community, here is the log from the commit of package openvswitch for openSUSE:Factory checked in at 2013-05-27 09:55:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openvswitch (Old) and /work/SRC/openSUSE:Factory/.openvswitch.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openvswitch" Changes: -------- --- /work/SRC/openSUSE:Factory/openvswitch/openvswitch.changes 2013-05-07 07:30:42.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.openvswitch.new/openvswitch.changes 2013-05-27 09:55:20.000000000 +0200 @@ -1,0 +2,10 @@ +Fri May 17 11:58:32 UTC 2013 - [email protected] + +- only call boot.sh for newer distros +- build parallel +- accept-newer-kernel-versions.diff: + Accept newer kernel versions +- sle11-device-ops-backport.diff + Handle sle11 device ops backport + +------------------------------------------------------------------- New: ---- accept-newer-kernel-versions.diff sle11-device-ops-backport.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openvswitch.spec ++++++ --- /var/tmp/diff_new_pack.trJcf5/_old 2013-05-27 09:55:21.000000000 +0200 +++ /var/tmp/diff_new_pack.trJcf5/_new 2013-05-27 09:55:21.000000000 +0200 @@ -1,4 +1,6 @@ # +# spec file for package openvswitch +# # Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties @@ -26,10 +28,10 @@ Name: openvswitch Version: 1.10.0 Release: 0 -License: Apache-2.0 Summary: An open source, production quality, multilayer virtual switch -Url: http://openswitch.org/ +License: Apache-2.0 Group: Productivity/Networking/System +Url: http://openswitch.org/ Source0: http://openvswitch.org/releases/%{name}-%{version}.tar.gz Source1: preamble Source2: openvswitch-switch.init @@ -37,8 +39,11 @@ Source4: openvswitch-switch.logrotate Source5: openvswitch-controller.init Source6: openvswitch-controller.sysconfig +Patch0: sle11-device-ops-backport.diff +Patch1: accept-newer-kernel-versions.diff BuildRequires: autoconf BuildRequires: automake +BuildRequires: fdupes BuildRequires: gcc BuildRequires: glibc-devel BuildRequires: graphviz @@ -50,7 +55,6 @@ BuildRequires: pkg-config BuildRequires: python-devel BuildRequires: valgrind-devel -BuildRequires: fdupes Requires: logrotate Requires: openssl Requires: python @@ -112,6 +116,7 @@ Requires: uuid-runtime Suggests: openvswitch-kmp Suggests: logrotate + %description switch openvswitch-switch provides the userspace components and utilities for the Open vSwitch kernel-based switch. @@ -216,6 +221,10 @@ %prep %setup -q +%patch0 +%if 0%{?suse_version} > 1230 +%patch1 +%endif set -- * mkdir source @@ -224,8 +233,8 @@ %build pushd source -# don't call boot.sh, we don't have appropriate autoconf there -%if ! 0%{?sles_version} +# only call boot.sh for distros with autoconf >= 2.64 +%if 0%{?suse_version} > 1110 bash -x boot.sh %endif popd @@ -237,7 +246,7 @@ krel=$(make -s -C /usr/src/linux-obj/%_target_cpu/$flavor kernelrelease) kernel_source_dir=$(readlink /lib/modules/$krel/source) cp -a $kernel_source_dir/net/openvswitch/* $flavor/ - make -C %{kernel_source $flavor} modules M=$PWD/$flavor + make %{?_smp_mflags} -C %{kernel_source $flavor} modules M=$PWD/$flavor done %else export EXTRA_CFLAGS='-DVERSION=\"%{version}\"' @@ -250,7 +259,7 @@ --with-linux=/usr/src/linux-obj/%_target_cpu/$flavor \ --with-linux-source=/usr/src/linux cd datapath/linux - make + make %{?_smp_mflags} popd done %endif @@ -293,7 +302,6 @@ %{buildroot}/%{_sysconfdir}/init.d/%{name}-controller ln -s %{_sysconfdir}/init.d/%{name}-controller %{buildroot}%{_sbindir}/rc%{name}-controller - install -d -m 755 %{buildroot}/%{_sysconfdir}/sysconfig install -d -m 755 %{buildroot}/%{_sysconfdir}/logrotate.d install -d -m 755 %{buildroot}/var/log/openvswitch ++++++ accept-newer-kernel-versions.diff ++++++ --- datapath/datapath.c +++ datapath/datapath.c @@ -60,9 +60,8 @@ #include "tunnel.h" #include "vport-internal_dev.h" -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18) || \ - LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0) -#error Kernels before 2.6.18 or after 3.8 are not supported by this version of Open vSwitch. +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18) +#error Kernels before 2.6.18 are not supported by this version of Open vSwitch. #endif #define REHASH_FLOW_INTERVAL (10 * 60 * HZ) @@ -158,11 +157,10 @@ struct vport *ovs_lookup_vport(const struct datapath *dp, u16 port_no) { struct vport *vport; - struct hlist_node *n; struct hlist_head *head; head = vport_hash_bucket(dp, port_no); - hlist_for_each_entry_rcu(vport, n, head, dp_hash_node) { + hlist_for_each_entry_rcu(vport, head, dp_hash_node) { if (vport->port_no == port_no) return vport; } @@ -1636,9 +1634,9 @@ for (i = 0; i < DP_VPORT_HASH_BUCKETS; i++) { struct vport *vport; - struct hlist_node *node, *n; + struct hlist_node *node; - hlist_for_each_entry_safe(vport, node, n, &dp->ports[i], dp_hash_node) + hlist_for_each_entry_safe(vport, node, &dp->ports[i], dp_hash_node) if (vport->port_no != OVSP_LOCAL) ovs_dp_detach_port(vport); } @@ -2125,10 +2123,9 @@ rcu_read_lock(); for (i = bucket; i < DP_VPORT_HASH_BUCKETS; i++) { struct vport *vport; - struct hlist_node *n; j = 0; - hlist_for_each_entry_rcu(vport, n, &dp->ports[i], dp_hash_node) { + hlist_for_each_entry_rcu(vport, &dp->ports[i], dp_hash_node) { if (j >= skip && ovs_vport_cmd_fill_info(vport, skb, NETLINK_CB(cb->skb).portid, --- datapath/flow.c +++ datapath/flow.c @@ -299,10 +299,10 @@ for (i = 0; i < table->n_buckets; i++) { struct sw_flow *flow; struct hlist_head *head = flex_array_get(table->buckets, i); - struct hlist_node *node, *n; + struct hlist_node *node; int ver = table->node_ver; - hlist_for_each_entry_safe(flow, node, n, head, hash_node[ver]) { + hlist_for_each_entry_safe(flow, node, head, hash_node[ver]) { hlist_del_rcu(&flow->hash_node[ver]); ovs_flow_free(flow); } @@ -332,7 +332,6 @@ { struct sw_flow *flow; struct hlist_head *head; - struct hlist_node *n; int ver; int i; @@ -340,7 +339,7 @@ while (*bucket < table->n_buckets) { i = 0; head = flex_array_get(table->buckets, *bucket); - hlist_for_each_entry_rcu(flow, n, head, hash_node[ver]) { + hlist_for_each_entry_rcu(flow, head, hash_node[ver]) { if (i < *last) { i++; continue; @@ -375,11 +374,10 @@ for (i = 0; i < old->n_buckets; i++) { struct sw_flow *flow; struct hlist_head *head; - struct hlist_node *n; head = flex_array_get(old->buckets, i); - hlist_for_each_entry(flow, n, head, hash_node[old_ver]) + hlist_for_each_entry(flow, head, hash_node[old_ver]) __flow_tbl_insert(new, flow); } old->keep_flows = true; @@ -797,7 +795,6 @@ struct sw_flow_key *key, int key_len) { struct sw_flow *flow; - struct hlist_node *n; struct hlist_head *head; u8 *_key; int key_start; @@ -808,7 +805,7 @@ _key = (u8 *) key + key_start; head = find_bucket(table, hash); - hlist_for_each_entry_rcu(flow, n, head, hash_node[table->node_ver]) { + hlist_for_each_entry_rcu(flow, head, hash_node[table->node_ver]) { if (flow->hash == hash && !memcmp((u8 *)&flow->key + key_start, _key, key_len - key_start)) { --- datapath/vport.c +++ datapath/vport.c @@ -138,9 +138,8 @@ { struct hlist_head *bucket = hash_bucket(net, name); struct vport *vport; - struct hlist_node *node; - hlist_for_each_entry_rcu(vport, node, bucket, hash_node) + hlist_for_each_entry_rcu(vport, bucket, hash_node) if (!strcmp(name, vport->ops->get_name(vport)) && net_eq(ovs_dp_get_net(vport->dp), net)) return vport; ++++++ sle11-device-ops-backport.diff ++++++ --- datapath/vport-internal_dev.c +++ datapath/vport-internal_dev.c @@ -34,7 +34,7 @@ #include "vport-internal_dev.h" #include "vport-netdev.h" -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) #define HAVE_NET_DEVICE_OPS #endif -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
