[Fwd: Ethernet problem in 2895 kernel]

Jay Cliburn jacliburn at bellsouth.net
Tue May 1 19:39:51 UTC 2007


Steve Grubb wrote:
> On Tuesday 01 May 2007 14:50, Jay Cliburn wrote:
>> What type cards?  You mention your motherboard type below (Asus A8N-E), but
>> you indicate the onboard nic (eth1) isn't giving you problems.
> 
> I see the same problem. This is the lspci output:
> 
> 05:09.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 
> 78)
> 3f:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5752 Gigabit 
> Ethernet PCI Express
> 
> I think Chuck traced the text that comes out to 3Com, but its been a while. 
> AFAICT, the problem started around the 2834 kernel/Feb 15.
> 
> -Steve
> 
> 

The only seemingly relevant change I see in the 3c59x driver in the February 
time frame is this one, although the change appears harmless enough: 
http://lkml.org/lkml/2007/2/1/183

commit 0d38ff1d3d34ca9ae2a61cf98cf47530f9d51dee
Author: Jiri Kosina <jkosina at suse.cz>
Date:   Mon Feb 5 16:29:48 2007 -0800

     NET-3c59x: turn local_save_flags() + local_irq_disable() into local_irq_save

     drivers/net/3c59x.c::poll_vortex() contains local_irq_disable() after
     local_save_flags().  Turn it into local_irq_save().

     Signed-off-by: Jiri Kosina <jkosina at suse.cz>
     Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
     Signed-off-by: Jeff Garzik <jeff at garzik.org>

diff --git a/drivers/net/3c59x.c b/drivers/net/3c59x.c
index 80bdcf8..716a472 100644
--- a/drivers/net/3c59x.c
+++ b/drivers/net/3c59x.c
@@ -792,8 +792,7 @@ static void poll_vortex(struct net_device *dev)
  {
         struct vortex_private *vp = netdev_priv(dev);
         unsigned long flags;
-       local_save_flags(flags);
-       local_irq_disable();
+       local_irq_save(flags);
         (vp->full_bus_master_rx ? boomerang_interrupt:vortex_interrupt)(dev->irq
         local_irq_restore(flags);
  }


You might try reverting it to see if it helps.

Jay




More information about the fedora-test-list mailing list