mirror of
https://github.com/novatiq/packages.git
synced 2026-04-30 07:28:39 +01:00
openvswitch: bump to version 2.11.0
The following patches are in upstream now 0100-netdev-linux-Use-unsigned-int-for-ifi_flags.patch 0103-ovs-ctl-fix-setting-hostname.patch 0106-ovs-save-compatible-with-busybox-ip-command.patch 0107-datapath-use-KARCH-when-building-linux-datapath-modu.patch As for 0001-musl-compatibility.patch, the net/if_packet.h part does not apply anymore. And musl is not relevant as we use libatomic from gcc Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
This commit is contained in:
+38
@@ -0,0 +1,38 @@
|
||||
From c7247a20c7779dbeafda7767f4a3c090da37c0c0 Mon Sep 17 00:00:00 2001
|
||||
From: Helmut Schaa <helmut.schaa@googlemail.com>
|
||||
Date: Wed, 8 Jan 2014 13:48:49 +0100
|
||||
Subject: [PATCH 1/4] netdev-linux: Let interface flag survive internal port
|
||||
setup
|
||||
|
||||
Due to a race condition when bringing up an internal port on Linux
|
||||
some interface flags (e.g. IFF_MULTICAST) are falsely reset. This
|
||||
happens because netlink events may be processed after the according
|
||||
netdev has been brought up (which sets interface flags).
|
||||
|
||||
Fix this by reading the interface flags just before updating them
|
||||
if they have not been updated by from the kernel yet.
|
||||
|
||||
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
|
||||
---
|
||||
lib/netdev-linux.c | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c
|
||||
index 25d037cb6..ba1427986 100644
|
||||
--- a/lib/netdev-linux.c
|
||||
+++ b/lib/netdev-linux.c
|
||||
@@ -3117,7 +3117,13 @@ update_flags(struct netdev_linux *netdev, enum netdev_flags off,
|
||||
unsigned int old_flags, new_flags;
|
||||
int error = 0;
|
||||
|
||||
- old_flags = netdev->ifi_flags;
|
||||
+ if (!(netdev->cache_valid & VALID_DRVINFO)) {
|
||||
+ /* Most likely the debvice flags are not in sync yet, fetch them now */
|
||||
+ get_flags(&netdev->up, &old_flags);
|
||||
+ } else {
|
||||
+ old_flags = netdev->ifi_flags;
|
||||
+ }
|
||||
+
|
||||
*old_flagsp = iff_to_nd_flags(old_flags);
|
||||
new_flags = (old_flags & ~nd_to_iff_flags(off)) | nd_to_iff_flags(on);
|
||||
if (new_flags != old_flags) {
|
||||
Reference in New Issue
Block a user