Bug 120200 - Changing name of ethernet cards doesn't consistenly work
Summary: Changing name of ethernet cards doesn't consistenly work
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: initscripts
Version: rawhide
Hardware: i586
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Bill Nottingham
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-04-06 18:52 UTC by Allen Cook
Modified: 2014-03-17 02:43 UTC (History)
1 user (show)

Fixed In Version: FC4
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-09-30 21:13:33 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
hwconf file (3.87 KB, text/plain)
2004-04-06 18:53 UTC, Allen Cook
no flags Details
ifcfg-eth0 (213 bytes, text/plain)
2004-04-06 18:54 UTC, Allen Cook
no flags Details
ifcfg-eth1 (213 bytes, text/plain)
2004-04-06 18:55 UTC, Allen Cook
no flags Details
modprobe.conf (333 bytes, text/plain)
2004-04-06 18:55 UTC, Allen Cook
no flags Details

Description Allen Cook 2004-04-06 18:52:51 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6)
Gecko/20040312 Epiphany/1.2.1

Description of problem:
I have two ethernet cards. One is onboard (3c59x) and one is PCMCIA
(8139too). Kudzu sets the PCMCIA one to eth0 and the onboard to eth1.
I changed them through system-config-network (I had to delete them
entirely and add again, changing them wouldn't work).  Sometimes when
I try to start networking, it works.  However most of the time it
starts the PCMCIA one as eth0, then tries to start the PCMCIA one as
eth1, which causes an error.  Then none of the ifup or ifdown scripts
work because eth1 is started as eth0.  I have to use "ifconfig eth0
down" then start them up with ifup and ifdown.  Sometimes it will
start up the proper interfaces, sometimes it won't.  I haven't been
able to figure out what the determining factor is.

Version-Release number of selected component (if applicable):
1.60-24

How reproducible:
Sometimes

Steps to Reproduce:
1.  Have two ethernet cards
2.  Use system-config-network to swap their places
3.  Then try to start networking on boot, or any other time
    

Actual Results:  It will sometimes boot the wrong ethernet card when
given eth0,eth1, ect.

Expected Results:  It should boot the right ethernet card when given
eth0,eth1, ect.

Additional info:

Here is the output from the init.d/network script when it screws up
Apr 6 13:50:43 hostname ifup: done.
Apr 6 13:50:43 hostname network: Bringing up interface eth0: succeeded
Apr 6 13:50:43 hostname ifup: cannot change name of eth0 to eth1:
Device or resource busy
Apr 6 13:50:43 hostname ifup:
Apr 6 13:50:43 hostname ifup: interface 'eth0' not found
Apr 6 13:50:43 hostname ifup:
Apr 6 13:50:43 hostname ifup: cannot change name of eth0 to eth1:
Device or resource busy
Apr 6 13:50:43 hostname ifup: cannot change name of eth0 to eth1:
Device or resource busy
Apr 6 13:50:43 hostname ifup:
Apr 6 13:50:43 hostname ifup: interface 'eth0' not found
Apr 6 13:50:43 hostname ifup:
Apr 6 13:50:43 hostname ifup: Device eth1 has different MAC address
than expected, ignoring.
Apr 6 13:50:43 hostname ifup: cannot change name of eth0 to eth1:
Device or resource busy
Apr 6 13:50:43 hostname network: Bringing up interface eth1: failed

Comment 1 Allen Cook 2004-04-06 18:53:38 UTC
Created attachment 99151 [details]
hwconf file

Comment 2 Allen Cook 2004-04-06 18:54:48 UTC
Created attachment 99152 [details]
ifcfg-eth0

Comment 3 Allen Cook 2004-04-06 18:55:12 UTC
Created attachment 99153 [details]
ifcfg-eth1

Comment 4 Allen Cook 2004-04-06 18:55:53 UTC
Created attachment 99154 [details]
modprobe.conf

Comment 5 Bill Nottingham 2004-04-07 01:10:33 UTC
I'm assuming there's no wireless, or USB, or other sort of network
attached.

Is there anything referring to eth* in modprobe.conf.dist?

Comment 6 Allen Cook 2004-04-07 01:18:56 UTC
No, no other sort of networking attached.

This is the only entry in modprobe.conf.dist with "eth"

install eth1394 /bin/true

Doesn't really look related.

Comment 7 Bill Nottingham 2004-04-07 01:21:38 UTC
After you get in the 'failed' state, what is the output of ifconfig -a?



Comment 8 Allen Cook 2004-04-07 01:26:58 UTC
It would show eth0 with the proper DHCP address for the PCMCIA card,
lo and then sit0.  It wouldn't show the onboard at all.  I'll get you
exact output when I get back to work (I don't have the PCMCIA card
with me).

Comment 9 Allen Cook 2004-04-07 12:16:27 UTC
Here's the exact output of ifconfig -a

eth0      Link encap:Ethernet  HWaddr 00:40:05:0E:4E:D9
          inet addr:192.168.1.154  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::240:5ff:fe0e:4ed9/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:514 errors:0 dropped:0 overruns:0 frame:0
          TX packets:407 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:190916 (186.4 Kb)  TX bytes:84446 (82.4 Kb)
          Interrupt:11 Base address:0x4000
 
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:2729 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2729 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2395454 (2.2 Mb)  TX bytes:2395454 (2.2 Mb)
 
sit0      Link encap:IPv6-in-IPv4
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
 
the 192.168.1 address is the proper address for the PCMCIA card

Comment 10 Allen Cook 2004-04-07 12:20:26 UTC
Here's what I have to do to fix the situation.

sudo ifconfig eth0 down
sudo rmmod 8139too
 
Message from syslogd@hostname at Wed Apr  7 08:23:42 2004 ...
hostname kernel: unregister_netdevice: waiting for eth0 to become
free. Usage count = 5
sudo rmmod 3c59x
ERROR: Module 3c59x does not exist in /proc/modules
sudo /etc/init.d/network restart
Shutting down loopback interface:                          [  OK  ]
Setting network parameters:                                [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:                                [  OK  ]
Bringing up interface eth1:                                [  OK  ]



Comment 11 Allen Cook 2004-04-07 12:28:56 UTC
Okay I finally solved that problem, the PCMCIA stuff was starting
before networking, so the PCMCIA card was loading the 8139too module
before the onboard one.  I moved the symlink in rc3 and rc5 so that it
starts just after networking.  Now when networking starts it complains
about eth1 not being present, but after the PCMCIA stuff loads
everything is where it needs to be.  So it's now an entirely different
bug which is just mildly annoying.

Comment 12 Mark Keith 2004-12-10 04:38:07 UTC
I have 2 pcmcia cards, one wire (D-link) and one Wireless (Linksys)
If first config D-link card, all goes well. in slot eth0 and nicknames
it eth0.  Now if I later remove it to use the wireless card, linksys
gets called eth0, nicknamed eth0:1.  But now the Wire card in the
config  menu tagged as wireless.

Secondly on second configed card at shutdown get eth0 busy, waiting on
blah.. blah.  And if rebooting, the leds (link and power) never shut off)

Thirdly notice that as root and using command "#: service pcmcia stop"
unlike when I was using RH9 the pcmcia card leds are still lite, so
guess still active.

Mark
mdkeith

Comment 13 Bill Nottingham 2005-09-30 21:13:33 UTC
With FC4, this issue *should* be fixed; this code has undergone a few iterations
since this bug was first opened. Apologies for the lack of response.


Note You need to log in before you can comment on or make changes to this bug.