* [BUG] in skge.c on 2.6.18-rc5
@ 2006-08-30 15:30 Thibaut VARENE
2006-08-30 16:17 ` Stephen Hemminger
2006-08-30 17:21 ` Thibaut VARENE
0 siblings, 2 replies; 6+ messages in thread
From: Thibaut VARENE @ 2006-08-30 15:30 UTC (permalink / raw)
To: shemminger, netdev, Jeff Garzik
Hi,
The following commit:
commit 239e44e1f05e2163ee066c07a753f9fb445979b2
Author: Edgar E. Iglesias <edgar.iglesias@axis.com>
Date: Mon Aug 14 23:00:24 2006 -0700
[PATCH] skge: remember to run netif_poll_disable()
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@axis.com>
Cc: Stephen Hemminger <shemminger@osdl.org>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
diff --git a/drivers/net/skge.c b/drivers/net/skge.c
index 7de9a07..ad878df 100644
--- a/drivers/net/skge.c
+++ b/drivers/net/skge.c
@@ -2211,6 +2211,7 @@ static int skge_up(struct net_device *de
skge_write8(hw, Q_ADDR(rxqaddr[port], Q_CSR), CSR_START |
CSR_IRQ_CL_F); skge_led(skge, LED_MODE_ON);
+ netif_poll_enable(dev);
return 0;
free_rx_ring:
@@ -2279,6 +2280,7 @@ static int skge_down(struct net_device *
skge_led(skge, LED_MODE_OFF);
+ netif_poll_disable(dev);
skge_tx_clean(skge);
skge_rx_clean(skge);
panics my 2.6.18-rc5 kernel on my em64t box apparently on first
network activity (eg 'ping'). Reverting it gets me back to a
functional kernel.
HTH
T-Bone
varenet@PeroPero:~$ lspci | grep Ethernet
02:00.0 Ethernet controller: Marvell Technology Group Ltd. Unknown
device 4364 (rev 12)
05:04.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001
Gigabit Ethernet Controller (rev 13)
--
Thibaut VARENE
http://www.parisc-linux.org/~varenet/
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [BUG] in skge.c on 2.6.18-rc5
2006-08-30 15:30 [BUG] in skge.c on 2.6.18-rc5 Thibaut VARENE
@ 2006-08-30 16:17 ` Stephen Hemminger
2006-08-30 17:21 ` Thibaut VARENE
1 sibling, 0 replies; 6+ messages in thread
From: Stephen Hemminger @ 2006-08-30 16:17 UTC (permalink / raw)
To: Thibaut VARENE; +Cc: netdev, Jeff Garzik
On Wed, 30 Aug 2006 17:30:46 +0200
"Thibaut VARENE" <T-Bone@parisc-linux.org> wrote:
> Hi,
>
> The following commit:
>
> commit 239e44e1f05e2163ee066c07a753f9fb445979b2
> Author: Edgar E. Iglesias <edgar.iglesias@axis.com>
> Date: Mon Aug 14 23:00:24 2006 -0700
>
> [PATCH] skge: remember to run netif_poll_disable()
>
> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@axis.com>
> Cc: Stephen Hemminger <shemminger@osdl.org>
> Cc: Jeff Garzik <jeff@garzik.org>
> Signed-off-by: Andrew Morton <akpm@osdl.org>
> Signed-off-by: Jeff Garzik <jeff@garzik.org>
>
> diff --git a/drivers/net/skge.c b/drivers/net/skge.c
> index 7de9a07..ad878df 100644
> --- a/drivers/net/skge.c
> +++ b/drivers/net/skge.c
> @@ -2211,6 +2211,7 @@ static int skge_up(struct net_device *de
> skge_write8(hw, Q_ADDR(rxqaddr[port], Q_CSR), CSR_START |
> CSR_IRQ_CL_F); skge_led(skge, LED_MODE_ON);
>
> + netif_poll_enable(dev);
> return 0;
>
> free_rx_ring:
> @@ -2279,6 +2280,7 @@ static int skge_down(struct net_device *
>
> skge_led(skge, LED_MODE_OFF);
>
> + netif_poll_disable(dev);
> skge_tx_clean(skge);
> skge_rx_clean(skge);
>
>
> panics my 2.6.18-rc5 kernel on my em64t box apparently on first
> network activity (eg 'ping'). Reverting it gets me back to a
> functional kernel
How are you bringing the network up, are you using autonegotiation?
--
Stephen Hemminger <shemminger@osdl.org>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [BUG] in skge.c on 2.6.18-rc5
2006-08-30 15:30 [BUG] in skge.c on 2.6.18-rc5 Thibaut VARENE
2006-08-30 16:17 ` Stephen Hemminger
@ 2006-08-30 17:21 ` Thibaut VARENE
2006-08-30 17:29 ` Stephen Hemminger
1 sibling, 1 reply; 6+ messages in thread
From: Thibaut VARENE @ 2006-08-30 17:21 UTC (permalink / raw)
To: shemminger; +Cc: netdev, Jeff Garzik
Replying to myself as I've been pointed at Stephen's reply (please CC
me, i'm not subscribed):
I'm bringing the interface up with 'dhclient eth0', and yes it's using autoneg.
HTH
T_Bone
On 8/30/06, Thibaut VARENE <T-Bone@parisc-linux.org> wrote:
> Hi,
>
> The following commit:
>
> commit 239e44e1f05e2163ee066c07a753f9fb445979b2
> Author: Edgar E. Iglesias <edgar.iglesias@axis.com>
> Date: Mon Aug 14 23:00:24 2006 -0700
--
Thibaut VARENE
http://www.parisc-linux.org/~varenet/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [BUG] in skge.c on 2.6.18-rc5
2006-08-30 17:21 ` Thibaut VARENE
@ 2006-08-30 17:29 ` Stephen Hemminger
2006-08-30 17:36 ` Thibaut VARENE
0 siblings, 1 reply; 6+ messages in thread
From: Stephen Hemminger @ 2006-08-30 17:29 UTC (permalink / raw)
To: Thibaut VARENE; +Cc: netdev, Jeff Garzik
On Wed, 30 Aug 2006 19:21:20 +0200
"Thibaut VARENE" <T-Bone@parisc-linux.org> wrote:
> Replying to myself as I've been pointed at Stephen's reply (please CC
> me, i'm not subscribed):
>
> I'm bringing the interface up with 'dhclient eth0', and yes it's using autoneg.
>
Any chance of getting a backtrace; serial port, digital camera, handwritten note?
--
Stephen Hemminger <shemminger@osdl.org>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [BUG] in skge.c on 2.6.18-rc5
2006-08-30 17:29 ` Stephen Hemminger
@ 2006-08-30 17:36 ` Thibaut VARENE
2006-08-31 8:48 ` Edgar E. Iglesias
0 siblings, 1 reply; 6+ messages in thread
From: Thibaut VARENE @ 2006-08-30 17:36 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: netdev, Jeff Garzik
On 8/30/06, Stephen Hemminger <shemminger@osdl.org> wrote:
> On Wed, 30 Aug 2006 19:21:20 +0200
> "Thibaut VARENE" <T-Bone@parisc-linux.org> wrote:
>
> > Replying to myself as I've been pointed at Stephen's reply (please CC
> > me, i'm not subscribed):
> >
> > I'm bringing the interface up with 'dhclient eth0', and yes it's using autoneg.
> >
>
> Any chance of getting a backtrace; serial port, digital camera, handwritten note?
If you can deal with this extremely blurry shot:
http://www.pateam.org/archive/tmp/IMGP0825.JPG
begins with "mod_timer" / "neigh_update" / "read_lock" and so on.
Worst case I'll reproduce the bug again and dump a better bt, but I'd
rather avoid as much as possible as I use that machine a lot right now
;P
HTH
T-Bone
--
Thibaut VARENE
http://www.parisc-linux.org/~varenet/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [BUG] in skge.c on 2.6.18-rc5
2006-08-30 17:36 ` Thibaut VARENE
@ 2006-08-31 8:48 ` Edgar E. Iglesias
0 siblings, 0 replies; 6+ messages in thread
From: Edgar E. Iglesias @ 2006-08-31 8:48 UTC (permalink / raw)
To: Thibaut VARENE; +Cc: Stephen Hemminger, netdev, Jeff Garzik
On Wed, Aug 30, 2006 at 07:36:56PM +0200, Thibaut VARENE wrote:
> On 8/30/06, Stephen Hemminger <shemminger@osdl.org> wrote:
> >On Wed, 30 Aug 2006 19:21:20 +0200
> >"Thibaut VARENE" <T-Bone@parisc-linux.org> wrote:
> >
> >> Replying to myself as I've been pointed at Stephen's reply (please CC
> >> me, i'm not subscribed):
> >>
> >> I'm bringing the interface up with 'dhclient eth0', and yes it's using
> >autoneg.
> >>
> >
> >Any chance of getting a backtrace; serial port, digital camera,
> >handwritten note?
>
> If you can deal with this extremely blurry shot:
> http://www.pateam.org/archive/tmp/IMGP0825.JPG
>
> begins with "mod_timer" / "neigh_update" / "read_lock" and so on.
>
> Worst case I'll reproduce the bug again and dump a better bt, but I'd
> rather avoid as much as possible as I use that machine a lot right now
> ;P
Hi,
It may be safer to disable pollers for the entire down procedure. I think
we might also have races where xmitters are active while we are in
skge_down. Taking the txlock around netif_stop_queue probably doens't help
as a txirq can hit just after and wakeup the queue. Dont know if the
xmitters while in skge_down will cause problems though.
I have no skge hw so I am pretty much in the dark, cannot test anything,
sorry.
Best regards
--
Programmer
Edgar E. Iglesias <edgar.iglesias@axis.com> 46.46.272.1946
Subject: [PATCH] disable pollers while stopping hw, not just around rx_clean.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@axis.com>
diff --git a/drivers/net/skge.c b/drivers/net/skge.c
index ad878df..cd8c1e4 100644
--- a/drivers/net/skge.c
+++ b/drivers/net/skge.c
@@ -2236,6 +2236,7 @@ static int skge_down(struct net_device *
if (netif_msg_ifdown(skge))
printk(KERN_INFO PFX "%s: disabling interface\n", dev->name);
+ netif_poll_disable(dev);
netif_stop_queue(dev);
skge_write8(skge->hw, SK_REG(skge->port, LNK_LED_REG), LED_OFF);
@@ -2280,7 +2281,6 @@ static int skge_down(struct net_device *
skge_led(skge, LED_MODE_OFF);
- netif_poll_disable(dev);
skge_tx_clean(skge);
skge_rx_clean(skge);
^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2006-08-31 8:48 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-30 15:30 [BUG] in skge.c on 2.6.18-rc5 Thibaut VARENE
2006-08-30 16:17 ` Stephen Hemminger
2006-08-30 17:21 ` Thibaut VARENE
2006-08-30 17:29 ` Stephen Hemminger
2006-08-30 17:36 ` Thibaut VARENE
2006-08-31 8:48 ` Edgar E. Iglesias
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).