lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20070711083117.46fdb9e2@freepuppy.rosehill.hemminger.net>
Date:	Wed, 11 Jul 2007 08:31:17 -0700
From:	Stephen Hemminger <shemminger@...ux-foundation.org>
To:	Ben Dooks <ben@...ff.org>
Cc:	Linux netdev <netdev@...r.kernel.org>
Subject: Re: ethtool locking

On Wed, 11 Jul 2007 11:58:08 +0100
Ben Dooks <ben@...ff.org> wrote:

> I am currently upgrading the DM9000 network driver to support
> ethtool for items such as controlling the MII interface and
> have the following question about locking with the ethtool
> interface:
> 
> Most devices use an overall spinlock when changing the settings
> such as in the 8139too.c driver:
> 
> static int rtl8139_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
> {
> 	struct rtl8139_private *np = netdev_priv(dev);
> 	int rc;
> 	spin_lock_irq(&np->lock);
> 	rc = mii_ethtool_sset(&np->mii, cmd);
> 	spin_unlock_irq(&np->lock);
> 	return rc;
> }
> 
> In the case of the DM9000, the phy read and write code
> already has a spinlock in for hardware access.
> 
> Do I need any more locking for the MII calls other than
> what is provided by the lower layer (IE, do these calls
> need locking against anything else?)
> 

All network API changes are currently protected by the netlink
mutex (commonly referred to as RTNL). But your device must protect
itself from any changes in settings due to interrupts from PHY.

-- 
Stephen Hemminger <shemminger@...ux-foundation.org>
-
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ