[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Possible modprobe parameter boot problem



Try using ethtool package (command) to change nic params (mode).

Then make it persistent after booting on /etc/rc.local

Bye.

"You don't know where your shadow will fall",
Somebody.-
----------------------------------------------------------------
Olaf Reitmaier Veracierta (BB) <olafrv@gmail.com>
----------------------------------------------------------------
http://olafrv.googlepages.com
----------------------------------------------------------------


From: Richard Katsch <rkatsch@gmail.com>
Date: Thu, 4 Mar 2010 09:39:29 +1100
To: <debian-user@lists.debian.org>
Subject: Possible modprobe parameter boot problem

Hi,
 I hope this is the right forum to pursue this problem. If not, I'm sure someone will let me know.

The (perceived) problem: modprobe appear not to use an option file during boot but will use the file if it is invoked manually.

The system: desktop pentium pc with a "Boomerang NIC" that is the subject of the problem. More details available if needed.

The Linux version: Up to date version of "testing", which is now "squeeze". Installed via the Net using the 10baseT connector. The install disk
could not find the 10base2 hole either! The system is working well with no apparent other problems.

The details: The NIC is a 3c59x/3c900 type card with both 10baseT and 10base2 (BNC) type connectors. The network on which it  normally lives uses
the 10base2 connectors. In order to force the 10base2 connector the file "local.conf" is placed in the directory "/etc/modprobe.d/". The contents
of the file are:
alias eth0 3c59x
options 3c59x options=3

According to what I have read the "options=3" should force the card into 10base2 mode. I don't believe the "alias" line is really needed but it was
mentioned in one of the web pages I found. It appears to make no difference.

OK. The system boots normally and in "dmesg" we find the following lines:

...
[    1.559151] FDC 0 is a post-1991 82077
[    1.559246] 3c59x 0000:02:03.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[    1.559252] 3c59x: Donald Becker and others.
[    1.559263] 0000:02:03.0: 3Com PCI 3c900 Boomerang 10Mbps Combo at 0001c000.
[    1.600132] ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00
...

Note there is no mention of 10base2 mode. The network is not available.

If I execute the commands:

modprobe -r 3c59x
modprobe 3c59x

then the network comes up and the following lines appear in "dmesg"

...
[   17.863207] 3c59x: Donald Becker and others.
[   17.863222] 0000:02:03.0: 3Com PCI 3c900 Boomerang 10Mbps Combo at 0001c000.
[   17.884071] 0000:02:03.0:  Media override to transceiver type 3 (10base2).
[   17.992935] eth0: Media override to transceiver 3 (10base2).
[   17.992945] eth0:  setting half-duplex.
[   28.792023] eth0: no IPv6 routers present
...

If the file "local.conf" is moved out of "/etc/modprobe.d" then the previous step doesn't work. Clearly modprobe is accessing the "local.conf" file.

It seems as if "local.conf" is being ignored during the boot stage, contrary to what I find in the documentation. udev appears to take some interest
in the card but I'm not sure how to modify the udev scripts to achieve what I want and I don't want to break anything here.

My present work around is to include the commands above in "/etc/rc.local". Everything works as it should.

Best regards
Richard Katsch



Reply to: