diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-08-20 18:32:57 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-08-20 18:32:57 -0400 |
commit | 8e7430857af5b242c950d3d2bb00289374f1436a (patch) | |
tree | 7488faf98210b8702f0150e969afc192b9c1a223 | |
parent | 6f5405942321c322f1ba83960837b63a8ebb039e (diff) |
Revert "genetlink: fix family dump race"
This reverts commit aab4f8d490ef8c184d854d5f630438c10406765c, commit
58ad436fcf49810aa006016107f494c9ac9013db upstream, as it causes
problems.
Cc: Johannes Berg <johannes.berg@intel.com>
Cc: Andrei Otcheretianski <andrei.otcheretianski@intel.com>
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | net/netlink/genetlink.c | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/net/netlink/genetlink.c b/net/netlink/genetlink.c index ba6e55d1ca44..1076fe16b122 100644 --- a/net/netlink/genetlink.c +++ b/net/netlink/genetlink.c | |||
@@ -789,10 +789,6 @@ static int ctrl_dumpfamily(struct sk_buff *skb, struct netlink_callback *cb) | |||
789 | struct net *net = sock_net(skb->sk); | 789 | struct net *net = sock_net(skb->sk); |
790 | int chains_to_skip = cb->args[0]; | 790 | int chains_to_skip = cb->args[0]; |
791 | int fams_to_skip = cb->args[1]; | 791 | int fams_to_skip = cb->args[1]; |
792 | bool need_locking = chains_to_skip || fams_to_skip; | ||
793 | |||
794 | if (need_locking) | ||
795 | genl_lock(); | ||
796 | 792 | ||
797 | for (i = chains_to_skip; i < GENL_FAM_TAB_SIZE; i++) { | 793 | for (i = chains_to_skip; i < GENL_FAM_TAB_SIZE; i++) { |
798 | n = 0; | 794 | n = 0; |
@@ -814,9 +810,6 @@ errout: | |||
814 | cb->args[0] = i; | 810 | cb->args[0] = i; |
815 | cb->args[1] = n; | 811 | cb->args[1] = n; |
816 | 812 | ||
817 | if (need_locking) | ||
818 | genl_unlock(); | ||
819 | |||
820 | return skb->len; | 813 | return skb->len; |
821 | } | 814 | } |
822 | 815 | ||