Re: [PATCH v4] net: ethernet: add driver for Aurora VLSI NB8800 Ethernet controller
From: Måns Rullgård
Date: Sat Oct 31 2015 - 14:44:12 EST
Francois Romieu <romieu@xxxxxxxxxxxxx> writes:
> Måns Rullgård <mans@xxxxxxxxx> :
>> Francois Romieu <romieu@xxxxxxxxxxxxx> writes:
> [...]
>> > It looks like it receives, then tries to allocate new resources. If so
>> > it may deplete the ring and you should instead consider allocating new
>> > resources first, then receive data if alloc + map suceeded.
>>
>> The hardware receives a frame and stores it in the provided DMA buffer,
>> then raises an interrupt and moves on to the next buffer. When a buffer
>> is handed over to the network stack, a new one has to take its place in
>> the DMA queue. I'm not sure how you're suggesting this be done
>> differently.
>
> - The hardware raises an interrupt and moves on to the next packet
> - The driver allocates a new buffer - call it Bob - and maps it.
> - If it succeeds
> - The driver unmaps the received packet
> - The driver hands the received packet to the network stack
> - The driver hands Bob to the hardware
> - It it fails
> - The driver updates the dropped packet stats
> - The driver recycles the received - yet non-unmapped - packet to the
> hardware
Oh, I see. That's better.
--
Måns Rullgård
mans@xxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/