diff options
Diffstat (limited to 'net/netlink/genetlink.c')
-rw-r--r-- | net/netlink/genetlink.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/net/netlink/genetlink.c b/net/netlink/genetlink.c index 3f1104dc128b..150579a21469 100644 --- a/net/netlink/genetlink.c +++ b/net/netlink/genetlink.c | |||
@@ -470,15 +470,11 @@ static int genl_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh) | |||
470 | return ops->doit(skb, &info); | 470 | return ops->doit(skb, &info); |
471 | } | 471 | } |
472 | 472 | ||
473 | static void genl_rcv(struct sock *sk, int len) | 473 | static void genl_rcv(struct sk_buff *skb) |
474 | { | 474 | { |
475 | unsigned int qlen = 0; | 475 | genl_lock(); |
476 | 476 | netlink_rcv_skb(skb, &genl_rcv_msg); | |
477 | do { | 477 | genl_unlock(); |
478 | genl_lock(); | ||
479 | qlen = netlink_run_queue(sk, qlen, genl_rcv_msg); | ||
480 | genl_unlock(); | ||
481 | } while (qlen && genl_sock && genl_sock->sk_receive_queue.qlen); | ||
482 | } | 478 | } |
483 | 479 | ||
484 | /************************************************************************** | 480 | /************************************************************************** |