![]() | |||||||||||||
Messages in this thread |
Eugene Teo <eteo@redhat.com> wrote: > > diff --git a/net/llc/llc_conn.c b/net/llc/llc_conn.c > index 3b8cfbe..28a3994 100644 > --- a/net/llc/llc_conn.c > +++ b/net/llc/llc_conn.c > @@ -323,7 +323,8 @@ int llc_conn_remove_acked_pdus(struct sock *sk, u8 nr, u16 > *how_many_unacked) > > if (!q_len) > goto out; > - skb = skb_peek(&llc->pdu_unack_q); > + if (! (skb = skb_peek(&llc->pdu_unack_q))) > + goto out; Actually we just checked that the queue length is non-zero so there must be a packet there unless someone's just removed it. If it were possible for someone else to remove it in parallel, then we've got bigger problems to worry about :) Cheers, -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2007-05-19 07:47 [from the cache] ©2003-2008 | |||||||||||||