Commit b96b894c authored by Figo.zhang's avatar Figo.zhang Committed by David S. Miller

fix a race in ks8695_poll

fix a race at the end of NAPI processing in ks8695_poll() function.
Signed-off-by: default avatarFigo.zhang <figo1802@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3a22813a
...@@ -575,9 +575,9 @@ static int ks8695_poll(struct napi_struct *napi, int budget) ...@@ -575,9 +575,9 @@ static int ks8695_poll(struct napi_struct *napi, int budget)
if (work_done < budget) { if (work_done < budget) {
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&ksp->rx_lock, flags); spin_lock_irqsave(&ksp->rx_lock, flags);
__napi_complete(napi);
/*enable rx interrupt*/ /*enable rx interrupt*/
writel(isr | mask_bit, KS8695_IRQ_VA + KS8695_INTEN); writel(isr | mask_bit, KS8695_IRQ_VA + KS8695_INTEN);
__napi_complete(napi);
spin_unlock_irqrestore(&ksp->rx_lock, flags); spin_unlock_irqrestore(&ksp->rx_lock, flags);
} }
return work_done; return work_done;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment