Ankh Examples

Ayad Mostafa ayad.mostafa2 at uni-rostock.de
Mon Apr 7 14:42:24 CEST 2014


Dear Adam,

> So it's looping in the while loop all the time while polling the NIC?
> That would be strange as at some point there should be no more packets
> to process.
it doesn't process any packets. it just enters the loop and breaks at (status 
& DescOwn). which is weird... and i even tried other cards but so far all 
behavior is the same.

what i observed so far:
- device raises irq -> irq_interrupt() -> schedule a softirq
- __do_softirq -> napi->poll(in this case cp_rx_poll())
- cp_rx_poll fails to call cp_rx_skb()

best regards,
ayad

On Thursday, April 03, 2014 10:10:57 PM Adam Lackorzynski wrote:
> On Thu Apr 03, 2014 at 04:21:56 +0200, Ayad Mostafa wrote:
> > hi,
> > 
> > well tracing along the irq handling path i ended up here
> > 
> > 		if (status & DescOwn) {
> > 		
> > 			break;
> > 		
> > 		}
> > 
> > in 8139cp.c, cp_rx_poll().
> > 
> > which doesn't say much except that the "Descriptor is owned by NIC"...
> 
> So it's looping in the while loop all the time while polling the NIC?
> That would be strange as at some point there should be no more packets
> to process.
> 
> 
> Adam



More information about the l4-hackers mailing list