forked from luck/tmp_suning_uos_patched
forcedeth: fix rx-work condition in nv_rx_process_optimized() too
The merge of my previous fix to forcedeth.c,
bcb5febb24
, lost an important hunk.
We need to fix nv_rx_process_optimized() too, as it contains duplicate logic.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
d85714d81c
commit
c1b7151a5e
|
@ -2408,13 +2408,13 @@ static int nv_rx_process_optimized(struct net_device *dev, int limit)
|
|||
struct fe_priv *np = netdev_priv(dev);
|
||||
u32 flags;
|
||||
u32 vlanflags = 0;
|
||||
u32 rx_processed_cnt = 0;
|
||||
int rx_work = 0;
|
||||
struct sk_buff *skb;
|
||||
int len;
|
||||
|
||||
while((np->get_rx.ex != np->put_rx.ex) &&
|
||||
!((flags = le32_to_cpu(np->get_rx.ex->flaglen)) & NV_RX2_AVAIL) &&
|
||||
(rx_processed_cnt++ < limit)) {
|
||||
(rx_work < limit)) {
|
||||
|
||||
dprintk(KERN_DEBUG "%s: nv_rx_process_optimized: flags 0x%x.\n",
|
||||
dev->name, flags);
|
||||
|
@ -2517,9 +2517,11 @@ static int nv_rx_process_optimized(struct net_device *dev, int limit)
|
|||
np->get_rx.ex = np->first_rx.ex;
|
||||
if (unlikely(np->get_rx_ctx++ == np->last_rx_ctx))
|
||||
np->get_rx_ctx = np->first_rx_ctx;
|
||||
|
||||
rx_work++;
|
||||
}
|
||||
|
||||
return rx_processed_cnt;
|
||||
return rx_work;
|
||||
}
|
||||
|
||||
static void set_bufsize(struct net_device *dev)
|
||||
|
|
Loading…
Reference in New Issue
Block a user