aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-08-20 18:32:57 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-08-20 18:32:57 -0400
commit8e7430857af5b242c950d3d2bb00289374f1436a (patch)
tree7488faf98210b8702f0150e969afc192b9c1a223
parent6f5405942321c322f1ba83960837b63a8ebb039e (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.c7
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