kernels/linux-2.4.0/include/linux/skbuff.h
/**
 *	__skb_dequeue_tail - remove from the tail of the queue
 *	@list: list to dequeue from
 *
 *	Remove the tail of the list. This function does not take any locks
 *	so must be used with appropriate locks held only. The tail item is
 *	returned or %NULL if the list is empty.
 */
remove from the tail of the queue
@list: list to dequeue from

Remove the tail of the list. This function does not take any locks
so must be used with appropriate locks held only. The tail item is
returned or %NULL if the list is empty.
remove from the tail of the queue @list : list to dequeue from Remove the tail of the list . This function does not take any locks so must be used with appropriate locks held only . The tail item is returned or %NULL if the list is empty .
static inline struct sk_buff *__skb_dequeue_tail(struct sk_buff_head *list)
{
	struct sk_buff *skb = skb_peek_tail(list); 
	if (skb)
		__skb_unlink(skb, list);
	return skb;
}
static inline struct sk_buff * __skb_dequeue_tail ( struct sk_buff_head * list ) { struct sk_buff * skb = skb_peek_tail ( list ) ; if ( skb ) __skb_unlink ( skb , list ) ; return skb ; }
__skb_dequeue_tail - remove from the tail of the queue
      @list: list to dequeue from
__skb_dequeue_tail - remove from the tail of the queue @list : list to dequeue from