diff options
Diffstat (limited to 'target/linux/generic/patches-3.18')
-rw-r--r-- | target/linux/generic/patches-3.18/643-bridge_remove_ipv6_dependency.patch | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.18/643-bridge_remove_ipv6_dependency.patch b/target/linux/generic/patches-3.18/643-bridge_remove_ipv6_dependency.patch index 3f0dcd3ae2..25f49c0c19 100644 --- a/target/linux/generic/patches-3.18/643-bridge_remove_ipv6_dependency.patch +++ b/target/linux/generic/patches-3.18/643-bridge_remove_ipv6_dependency.patch @@ -1,3 +1,16 @@ +From: Jonas Gorski <jonas.gorski+openwrt@gmail.com> +Subject: [PATCH] bridge: remove IPv6 depependency of bridge in 2.6.38+ + +Since 2.6.38 the bridge module has a dependency to IPv6 if IPv6 is +enabled. Since the IPv6 module isn't exactly lightweight and bridge also +only needs a single function from IPv6, it's rather easy to create a +common "lib" module with a RCU pointer to the actual implementation, if +the IPv6 module is loaded (although slightly hackish). + +The codepath seems to be only taken when using IPv6, so there should be +no negative side effects when IPv6 isn't loaded. I did not measure how +big the performance impact is. +--- --- a/include/net/addrconf.h +++ b/include/net/addrconf.h @@ -88,6 +88,12 @@ int ipv6_rcv_saddr_equal(const struct so |