projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
a88f92b
)
net: fix 'ip rule' iif/oif device rename
author
Maciej Żenczykowski
<
[email protected]
>
Sat, 8 Feb 2014 00:23:48 +0000
(16:23 -0800)
committer
David S. Miller
<
[email protected]
>
Mon, 10 Feb 2014 03:02:52 +0000
(19:02 -0800)
ip rules with iif/oif references do not update:
(detach/attach) across interface renames.
Signed-off-by: Maciej Żenczykowski <
[email protected]
>
CC: Willem de Bruijn <
[email protected]
>
CC: Eric Dumazet <
[email protected]
>
CC: Chris Davis <
[email protected]
>
CC: Carlo Contavalli <
[email protected]
>
Google-Bug-Id:
12936021
Acked-by: Eric Dumazet <
[email protected]
>
Signed-off-by: David S. Miller <
[email protected]
>
net/core/fib_rules.c
patch
|
blob
|
history
diff --git
a/net/core/fib_rules.c
b/net/core/fib_rules.c
index f409e0bd35c06456f4877d10d98c342f52362d84..185c341fafbd079714fe3a563b8209d5c5f7ead4 100644
(file)
--- a/
net/core/fib_rules.c
+++ b/
net/core/fib_rules.c
@@
-745,6
+745,13
@@
static int fib_rules_event(struct notifier_block *this, unsigned long event,
attach_rules(&ops->rules_list, dev);
break;
+ case NETDEV_CHANGENAME:
+ list_for_each_entry(ops, &net->rules_ops, list) {
+ detach_rules(&ops->rules_list, dev);
+ attach_rules(&ops->rules_list, dev);
+ }
+ break;
+
case NETDEV_UNREGISTER:
list_for_each_entry(ops, &net->rules_ops, list)
detach_rules(&ops->rules_list, dev);