diff options
author | Ying Xue <ying.xue@windriver.com> | 2013-01-21 02:30:08 +0400 |
---|---|---|
committer | Paul Gortmaker <paul.gortmaker@windriver.com> | 2013-02-16 01:10:13 +0400 |
commit | 57467e56293796f780e91a24600a732516f534ac (patch) | |
tree | 0d6915d5ef8b851d6099fcdf49d342f1ea5d254f /net | |
parent | d887199dc28c46788b155b234274d5ff41afed8e (diff) | |
download | linux-57467e56293796f780e91a24600a732516f534ac.tar.xz |
tipc: eliminate duplicated discard_rx_queue routine
The tipc function discard_rx_queue() is just a duplicated
implementation of __skb_queue_purge(). Remove the former
and directly invoke __skb_queue_purge().
In doing so, the underscores convey to the code reader, more
information about the current locking state that is assumed.
Signed-off-by: Ying Xue <ying.xue@windriver.com>
Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/tipc/socket.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/net/tipc/socket.c b/net/tipc/socket.c index 9b4e4833a484..f6ceecd44749 100644 --- a/net/tipc/socket.c +++ b/net/tipc/socket.c @@ -129,19 +129,6 @@ static void advance_rx_queue(struct sock *sk) } /** - * discard_rx_queue - discard all buffers in socket receive queue - * - * Caller must hold socket lock - */ -static void discard_rx_queue(struct sock *sk) -{ - struct sk_buff *buf; - - while ((buf = __skb_dequeue(&sk->sk_receive_queue))) - kfree_skb(buf); -} - -/** * reject_rx_queue - reject all buffers in socket receive queue * * Caller must hold socket lock @@ -292,7 +279,7 @@ static int release(struct socket *sock) res = tipc_deleteport(tport->ref); /* Discard any remaining (connection-based) messages in receive queue */ - discard_rx_queue(sk); + __skb_queue_purge(&sk->sk_receive_queue); /* Reject any messages that accumulated in backlog queue */ sock->state = SS_DISCONNECTING; @@ -1637,7 +1624,7 @@ restart: case SS_DISCONNECTING: /* Discard any unreceived messages */ - discard_rx_queue(sk); + __skb_queue_purge(&sk->sk_receive_queue); /* Wake up anyone sleeping in poll */ sk->sk_state_change(sk); |