diff options
-rw-r--r-- | net/mpls/af_mpls.c | 2 | ||||
-rw-r--r-- | net/mpls/internal.h | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c index 7b3f732269e4..bff427f31924 100644 --- a/net/mpls/af_mpls.c +++ b/net/mpls/af_mpls.c | |||
@@ -541,7 +541,7 @@ static void mpls_ifdown(struct net_device *dev) | |||
541 | 541 | ||
542 | RCU_INIT_POINTER(dev->mpls_ptr, NULL); | 542 | RCU_INIT_POINTER(dev->mpls_ptr, NULL); |
543 | 543 | ||
544 | kfree(mdev); | 544 | kfree_rcu(mdev, rcu); |
545 | } | 545 | } |
546 | 546 | ||
547 | static int mpls_dev_notify(struct notifier_block *this, unsigned long event, | 547 | static int mpls_dev_notify(struct notifier_block *this, unsigned long event, |
diff --git a/net/mpls/internal.h b/net/mpls/internal.h index b064c345042c..8cabeb5a1cb9 100644 --- a/net/mpls/internal.h +++ b/net/mpls/internal.h | |||
@@ -16,6 +16,7 @@ struct mpls_dev { | |||
16 | int input_enabled; | 16 | int input_enabled; |
17 | 17 | ||
18 | struct ctl_table_header *sysctl; | 18 | struct ctl_table_header *sysctl; |
19 | struct rcu_head rcu; | ||
19 | }; | 20 | }; |
20 | 21 | ||
21 | struct sk_buff; | 22 | struct sk_buff; |