[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1165303792.12510.55.camel@fuzzie.sanpeople.com>
Date: 05 Dec 2006 09:29:52 +0200
From: Andrew Victor <andrew@...people.com>
To: Stephen Hemminger <shemminger@...l.org>
Cc: netdev@...r.kernel.org, jgarzik@...ox.com
Subject: Re: [PATCH 2.6.19] AT91RM9200 Ethernet update 3
hi Stephen,
> Use netdev_alloc_skb instead. It sets skb->dev so you don't have to.
netdev_alloc_skb() seems to cause 2 function calls [__netdev_alloc_skb()
and __alloc_skb()], instead of just 1 for the dev_alloc_skb() case.
It might be more efficient if the driver manually sets skb->dev.
> Setting skb->len is redundant since that is what skb_put() does.
That's why that line is being removed.
> It would be best if you didn't have to copy data at all and could
> receive directly into the skb.
Probably, but then we'd need to worry about DMA and cache-aligned
skb's. We'd also need to always allocate maximum-sized skb's; and that
might be an issue since the AT91RM9200 is mainly used in embedded
devices where the amount of RAM can be limited.
> The existing code will cause poor realtime
> performance since the driver is copying received data with IRQ's disabled.
Only lower-priority interrupts should be disabled.
Regards,
Andrew Victor
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists