Message ID | 1375878854-29997-1-git-send-email-johannes@sipsolutions.net |
---|---|
State | Superseded, archived |
Delegated to: | David Miller |
Headers | show |
diff --git a/net/netlink/genetlink.c b/net/netlink/genetlink.c index 2fd6dbe..07a0b18 100644 --- a/net/netlink/genetlink.c +++ b/net/netlink/genetlink.c @@ -790,6 +790,9 @@ static int ctrl_dumpfamily(struct sk_buff *skb, struct netlink_callback *cb) int chains_to_skip = cb->args[0]; int fams_to_skip = cb->args[1]; + if (chains_to_skip) + genl_lock(); + for (i = chains_to_skip; i < GENL_FAM_TAB_SIZE; i++) { n = 0; list_for_each_entry(rt, genl_family_chain(i), family_list) { @@ -810,6 +813,9 @@ errout: cb->args[0] = i; cb->args[1] = n; + if (chains_to_skip) + genl_unlock(); + return skb->len; }