[openwrt/openwrt] kernel: fix crash in flow offload when removing net devices
LEDE Commits
lede-commits at lists.infradead.org
Fri Mar 23 12:57:01 PDT 2018
nbd pushed a commit to openwrt/openwrt.git, branch master:
https://git.lede-project.org/db108cdf14129698cb0740efe72f37f816d40267
commit db108cdf14129698cb0740efe72f37f816d40267
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Fri Mar 23 20:09:23 2018 +0100
kernel: fix crash in flow offload when removing net devices
Signed-off-by: Felix Fietkau <nbd at nbd.name>
---
.../generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/target/linux/generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch b/target/linux/generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch
index 5c40961..85826b8 100644
--- a/target/linux/generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch
+++ b/target/linux/generic/hack-4.14/650-netfilter-add-xt_OFFLOAD-target.patch
@@ -98,7 +98,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
obj-$(CONFIG_NETFILTER_XT_TARGET_LED) += xt_LED.o
--- /dev/null
+++ b/net/netfilter/xt_FLOWOFFLOAD.c
-@@ -0,0 +1,338 @@
+@@ -0,0 +1,340 @@
+/*
+ * Copyright (C) 2018 Felix Fietkau <nbd at nbd.name>
+ *
@@ -121,6 +121,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
+struct xt_flowoffload_hook {
+ struct hlist_node list;
+ struct nf_hook_ops ops;
++ struct net *net;
+ bool registered;
+ bool used;
+};
@@ -201,8 +202,9 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
+ continue;
+
+ hook->registered = true;
++ hook->net = dev_net(hook->ops.dev);
+ spin_unlock_bh(&hooks_lock);
-+ nf_register_net_hook(dev_net(hook->ops.dev), &hook->ops);
++ nf_register_net_hook(hook->net, &hook->ops);
+ spin_lock_bh(&hooks_lock);
+ goto restart;
+ }
@@ -221,7 +223,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
+
+ hlist_del(&hook->list);
+ spin_unlock_bh(&hooks_lock);
-+ nf_unregister_net_hook(dev_net(hook->ops.dev), &hook->ops);
++ nf_unregister_net_hook(hook->net, &hook->ops);
+ kfree(hook);
+ spin_lock_bh(&hooks_lock);
+ goto restart;
More information about the lede-commits
mailing list