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>
This commit is contained in:
Ying Xue 2013-01-20 23:30:08 +01:00 committed by Paul Gortmaker
parent d887199dc2
commit 57467e5629

View File

@ -128,19 +128,6 @@ static void advance_rx_queue(struct sock *sk)
kfree_skb(__skb_dequeue(&sk->sk_receive_queue));
}
/**
* 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
*
@ -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 @@ static int shutdown(struct socket *sock, int how)
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);