[PATCH] fs_enet: Don't call phy_mii_ioctl() in atomic context.

Subsystems: networking drivers, the rest

STALE6739d

3 messages, 3 authors, 2008-02-20 · open the first message on its own page

[PATCH] fs_enet: Don't call phy_mii_ioctl() in atomic context.

From: Scott Wood <hidden>
Date: 2008-02-15 21:08:11

The lock acquisition in fs_ioctl() does not appear to actually be necessary,
and thus is simply removed.

Signed-off-by: Scott Wood <redacted>
---
This fixes the following bug:
http://ozlabs.org/pipermail/linuxppc-dev/2008-February/051564.html

 drivers/net/fs_enet/fs_enet-main.c |    7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)
diff --git a/drivers/net/fs_enet/fs_enet-main.c b/drivers/net/fs_enet/fs_enet-main.c
index 42d94ed..af869cf 100644
--- a/drivers/net/fs_enet/fs_enet-main.c
+++ b/drivers/net/fs_enet/fs_enet-main.c
@@ -946,16 +946,11 @@ static int fs_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
 {
 	struct fs_enet_private *fep = netdev_priv(dev);
 	struct mii_ioctl_data *mii = (struct mii_ioctl_data *)&rq->ifr_data;
-	unsigned long flags;
-	int rc;
 
 	if (!netif_running(dev))
 		return -EINVAL;
 
-	spin_lock_irqsave(&fep->lock, flags);
-	rc = phy_mii_ioctl(fep->phydev, mii, cmd);
-	spin_unlock_irqrestore(&fep->lock, flags);
-	return rc;
+	return phy_mii_ioctl(fep->phydev, mii, cmd);
 }
 
 extern int fs_mii_connect(struct net_device *dev);
-- 
1.5.3.8

RE: [PATCH] fs_enet: Don't call phy_mii_ioctl() in atomic context.

From: Rune Torgersen <hidden>
Date: 2008-02-15 21:47:36

Scott Wood wrote:
quoted hunk
The lock acquisition in fs_ioctl() does not appear to actually be
necessary, and thus is simply removed.
=20
Signed-off-by: Scott Wood <redacted> ---
This fixes the following bug:
http://ozlabs.org/pipermail/linuxppc-dev/2008-February/051564.html
=20
 drivers/net/fs_enet/fs_enet-main.c |    7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)
=20
diff --git a/drivers/net/fs_enet/fs_enet-main.c
b/drivers/net/fs_enet/fs_enet-main.c
index 42d94ed..af869cf 100644
--- a/drivers/net/fs_enet/fs_enet-main.c
+++ b/drivers/net/fs_enet/fs_enet-main.c
@@ -946,16 +946,11 @@ static int fs_ioctl(struct net_device
*dev, struct ifreq *rq, int cmd)
 {
 	struct fs_enet_private *fep =3D netdev_priv(dev);
 	struct mii_ioctl_data *mii =3D (struct mii_ioctl_data
*)&rq->ifr_data;
-	unsigned long flags;
-	int rc;
=20
 	if (!netif_running(dev))
 		return -EINVAL;
=20
-	spin_lock_irqsave(&fep->lock, flags);
-	rc =3D phy_mii_ioctl(fep->phydev, mii, cmd);
-	spin_unlock_irqrestore(&fep->lock, flags);
-	return rc;
+	return phy_mii_ioctl(fep->phydev, mii, cmd);
 }
=20
 extern int fs_mii_connect(struct net_device *dev);
Acked-by: Rune Torgersen <redacted>

Tested it and it does indeed take care of the bug.

Re: [PATCH] fs_enet: Don't call phy_mii_ioctl() in atomic context.

From: Jeff Garzik <hidden>
Date: 2008-02-20 16:51:01

Scott Wood wrote:
The lock acquisition in fs_ioctl() does not appear to actually be necessary,
and thus is simply removed.

Signed-off-by: Scott Wood <redacted>
---
This fixes the following bug:
http://ozlabs.org/pipermail/linuxppc-dev/2008-February/051564.html

 drivers/net/fs_enet/fs_enet-main.c |    7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)
applied
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help