From: Herbert Xu <he...@go...> - 2004-10-21 00:35:53
|
On Wed, Oct 20, 2004 at 05:15:08PM -0700, David S. Miller wrote: > > +int netif_rx_ni(struct sk_buff *skb) > +{ > + int err = netif_rx(skb); > + > + preempt_disable(); > + if (softirq_pending(smp_processor_id())) > + do_softirq(); You need to move the netif_rx call inside the disable as otherwise you might be checking the pending flag on the wrong CPU. Cheers, -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} <he...@go...> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt |