Subject: Re: [PATCH netdev-2.6] jme: JMicron Gigabit Ethernet Driver

From: Jeff Garzik <[email-masked]>
Date: Sat, 23 Aug 2008 02:41:59 -0400

Guo-Fu Tseng wrote:
> Hi, Jeff:
> 
> Here is the full patch of JMicron Gigabit Ethernet driver.
> Supporting JMC250, and JMC260.
> 
> I'm new in this submitting system, I've tried hard not to done silly 
> errors.
> Comments, and corrections are welcome from anyone. Thank you for 
> reviewing it.
> 
> The patch is also available at:
> http://cooldavid.org/download/jme.netdev-2.6.20080823.patch
> 
> Signed-off-by: Guo-Fu Tseng <[email-masked]>

Very nice and clean and feature-complete!  Comments:

* the definition of jwrite32() and jread32():  writel() and readl() are 
defined in terms of the little-endian PCI bus, and therefore 
automatically handle byteswapping (or not) as defined by the platform API.

You should be able to just remove those le32_to_cpu() and the reverse, 
to obtain proper behavior.

* The atomic values rx_cleaning and tx_cleaning look problematic and 
potentially racy, though I admit not having completely evaluated its usage.

* we prefer not to add custom ioctls, but rather add functionality to 
ethtool.  in particular, JMESPIIOCTL does not appear to have any 
security checks, and is a potential security hole that permits an 
unpriveleged user direct access to hardware