network driver issues
217534 at gmail.com
Mon Jan 16 21:19:46 UTC 2012
I try adapting a network driver (net/ethernet/xilinx/ll_temac) for my
needs, but I'm not sure I understand the issues involved.
Maybe someone of you could point me in the right directions?
For instance, does the *skb structure passed to the start_xmit function
has to be freed by the network driver in any case? I.e. not calling
dev_kfree_skb(skb) anywhere in the driver is a bug?
I'm a bit confused about the need for locking tx-buffers (for SG-dma).
Somewhere (in the comments for another driver) I've read the calls to
start_xmit are serialised anyway? And then clearing the dma tx buffer in
the tx_irq should be fine because it should not get interrupted?
Could you maybe recommend a simple "role model" net/ethernet/ driver I
should have a look at? One which implements a locked tx buffer (in case
you think that's needed at all)
Many thanks for your help!
More information about the devel