When the system is bootup and it is on AC power the ipw2200 is not loaded untill the services "/etc/init.d/net.eth1" gets started then its loaded up. and it also remains unload untill wanted when the AC power plug is pulled. However if the system is bootup on the battery, it is loaded automatically regardless if it is in the blacklist or not. The only way i have found to combat this is to put it on the blacklist and also remove it from the /etc/modules.autoload/kernel-2.6 and modprobe it myself when its wanted. However this renders "/etc/init.d/net.eth1" non-functional untill it is modprobed which is not desired. What is wanted is to able to just execute "/etc/init.d/net.eth1" and it will automatically load it up, and when its stopped, it will unload it automatically. Whithout any of this "automatically loading and starting" stuff when booting up to battery. The /etc/init.d/net.eth1 is not in any runlevel, and the /etc/conf.d/rc the varriable RC_NET_STRICT_CHECKING="lo" so that any net services depending on net being up will work with the loopback device being up. Then some additional information is that the ipw2200 module is loaded into the kernel but its not activated thus i believe its not using the hardware untill the connection is up? Reproducible: Always Steps to Reproduce: 1. Blacklist the ipw2200 module 2. Change the RC_NET_STRICT_CHECKING="lo" in /etc/conf.d/rc 3. Remove all /etc/init.d/net.eth1 from all runlevel (or the correct eth? for the wirless card) 4. Bootup on battery power. Actual Results: the ipw2200 modules is automatically loaded into the kernel and the /etc/init.d/net.eth1 is also automatically started up, but no output is printed to the screen to indicate that /etc/init.d/net.eth1 has been started up. Expected Results: the ipw2200 module should remain unloaded untill the /etc/init.d/net.eth1 service is explictly started by the user. The system is a thinkpad t42 from ibm. Portage 2.0.51.22-r2 (default-linux/x86/2005.0, gcc-3.4.3-20050110, glibc-2.3.5-r0, 2.6.12-gentoo-r4 i686) ================================================================= System uname: 2.6.12-gentoo-r4 i686 Intel(R) Pentium(R) M processor 1.70GHz Gentoo Base System version 1.6.13 ccache version 2.3 [enabled] dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.10 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=pentium-m -mtune=pentium-m -fomit-frame-pointer -pipe -momit-leaf-frame-pointer -fno-ident" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium-m -mtune=pentium-m -fomit-frame-pointer -pipe -momit-leaf-frame-pointer -fno-ident -fvisibility-inlines-hidden" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.osuosl.org/ http://gd.tuwien.ac.at/opsys/linux/gentoo/ http://gentoo.math.bme.hu ftp://mirrors1.netvisao.pt/gentoo/" LC_ALL="en_GB.UTF-8" LDFLAGS="-Wl,-O1" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://10.10.10.1/gentoo-portage" USE="x86 crypt mmx nls ntpl pam sse ssl tcpd unicode userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LINGUAS
Well, i have the same sorta problem, so I'll toss in further comments. As with the above poster, net.eth1 is not in any runlevel as shown here: net.eth1 | net.lo | boot However, It seems that even if i'm plugged in randomly the net.eth1 script will state that its started. Prompting a restart when I want it to come up. Looking at /var/log/messages, I don't notice anything offhand that could be causing this. I will check though the next time this shows up to see if there is anything there.
What do you mean by "blacklisting" a module? I can't make much of this bug report, but I can't see how this is a mobile computing problem - perhaps Uberlord knows what this is all about?
(In reply to comment #2) > What do you mean by "blacklisting" a module? > > I can't make much of this bug report, but I can't see how this is a mobile > computing problem - perhaps Uberlord knows what this is all about? It appears that its a feature or bug, not sure currently, but suspecting a feature, but I would like the option to turn it off so when its blacklisted, it dosen't get loaded untill /etc/init.d/net.eth1 gets started, as it is right now its automatically loaded and /etc/init.d/net.eth1 is automatically started when the system is bootup off battery power. Which is undesirable imho. And by blacklisting, i mean i add it to the /etc/hotplug/blacklist file, To quote the comment in the file heading. # Listing a module here prevents the hotplug scripts from loading it. # Usually that'd be so that some other driver will bind it instead, # no matter which driver happens to get probed first. Sometimes user # mode tools can also control driver binding. And on AC power it works, the module is loaded into the kernel, but its not turned on and any scripts attached to it is not ran. Now if the battery power acted the same i wouldn't have filed a bug report, but however when the system is boot up off battery power as oposited to AC power, this module is automatically turned on and the /etc/init.d/net.eth1 is automatically ran, and there's no output to the screen to indicate that this script was ran.
Please attach your /etc/modules.conf file to this bug report.
### This file is automatically generated by modules-update alias char-major-10-175 agpgart alias char-major-10-200 tun alias char-major-81 bttv alias char-major-108 ppp_generic alias /dev/ppp ppp_generic alias tty-ldisc-3 ppp_async alias tty-ldisc-14 ppp_synctty alias ppp-compress-21 bsd_comp alias ppp-compress-24 ppp_deflate alias ppp-compress-26 ppp_deflate # Crypto modules (see http://www.kerneli.org/) alias loop-xfer-gen-0 loop_gen alias loop-xfer-3 loop_fish2 alias loop-xfer-gen-10 loop_gen alias cipher-2 des alias cipher-3 fish2 alias cipher-4 blowfish alias cipher-6 idea alias cipher-7 serp6f alias cipher-8 mars6 alias cipher-11 rc62 alias cipher-15 dfc2 alias cipher-16 rijndael alias cipher-17 rc5 # Support for i2c and lm_sensors alias char-major-89 i2c-dev # Old nvidia support ... alias char-major-195 NVdriver alias /dev/nvidiactl char-major-195 ### modules-update: end processing /etc/modules.d/aliases ### modules-update: start processing /etc/modules.d/alsa # Alsa 0.9.X kernel modules' configuration file. # $Header: /var/cvsroot/gentoo-x86/media-sound/alsa-utils/files/alsa-modules.conf-rc,v 1.4 2004/11/16 01:31:22 eradicator Exp $ # ALSA portion alias char-major-116 snd # OSS/Free portion alias char-major-14 soundcore # OSS/Free portion - card #1 alias sound-service-0-0 snd-mixer-oss alias sound-service-0-1 snd-seq-oss alias sound-service-0-3 snd-pcm-oss alias sound-service-0-8 snd-seq-oss alias sound-service-0-12 snd-pcm-oss ## OSS/Free portion - card #2 ## alias sound-service-1-0 snd-mixer-oss ## alias sound-service-1-3 snd-pcm-oss ## alias sound-service-1-12 snd-pcm-oss alias /dev/mixer snd-mixer-oss alias /dev/dsp snd-pcm-oss alias /dev/midi snd-seq-oss ### modules-update: start processing /etc/modules.d/i386 alias parport_lowlevel parport_pc alias char-major-10-144 nvram alias binfmt-0064 binfmt_aout alias char-major-10-135 rtc ### modules-update: start processing /etc/modules.d/x86info # $Header: /var/cvsroot/gentoo-x86/sys-apps/x86info/files/x86info-modules.conf-rc,v 1.2 2004/07/18 04:41:21 dragonheart Exp $ # # Aliases needed for x86info to probe data # these are so the modules auto-load as needed # alias char-major-202 msr alias char-major-203 cpuid alias /dev/cpu/*/msr msr alias /dev/cpu/*/cpuid cpuid ### modules-update: end processing /etc/modules.d/x86info That will be mine, I however will not be able to give further infomation on this bug with this particular laptop (dell 600M) as its going to a new owner.
Here is my modules.conf file and i've went ahead and reopned, because the resolution showed that it "needed information" ### This file is automatically generated by modules-update # # Please do not edit this file directly. If you want to change or add # anything please take a look at the files in /etc/modules.d and read # the manpage for modules-update. # ### modules-update: start processing /etc/modules.d/aliases # Aliases to tell insmod/modprobe which modules to use # Uncomment the network protocols you don't want loaded: # alias net-pf-1 off # Unix # alias net-pf-2 off # IPv4 # alias net-pf-3 off # Amateur Radio AX.25 # alias net-pf-4 off # IPX # alias net-pf-5 off # DDP / appletalk # alias net-pf-6 off # Amateur Radio NET/ROM # alias net-pf-9 off # X.25 # alias net-pf-10 off # IPv6 # alias net-pf-11 off # ROSE / Amateur Radio X.25 PLP # alias net-pf-19 off # Acorn Econet alias char-major-10-175 agpgart alias char-major-10-200 tun alias char-major-81 bttv alias char-major-108 ppp_generic alias /dev/ppp ppp_generic alias tty-ldisc-3 ppp_async alias tty-ldisc-14 ppp_synctty alias ppp-compress-21 bsd_comp alias ppp-compress-24 ppp_deflate alias ppp-compress-26 ppp_deflate # Crypto modules (see http://www.kerneli.org/) alias loop-xfer-gen-0 loop_gen alias loop-xfer-3 loop_fish2 alias loop-xfer-gen-10 loop_gen alias cipher-2 des alias cipher-3 fish2 alias cipher-4 blowfish alias cipher-6 idea alias cipher-7 serp6f alias cipher-8 mars6 alias cipher-11 rc62 alias cipher-15 dfc2 alias cipher-16 rijndael alias cipher-17 rc5 # Support for i2c and lm_sensors alias char-major-89 i2c-dev # Old nvidia support ... alias char-major-195 NVdriver alias /dev/nvidiactl char-major-195 ### modules-update: end processing /etc/modules.d/aliases ### modules-update: start processing /etc/modules.d/i386 alias parport_lowlevel parport_pc alias char-major-10-144 nvram alias binfmt-0064 binfmt_aout alias char-major-10-135 rtc ### modules-update: end processing /etc/modules.d/i386 ### modules-update: start processing /etc/modules.d/ibm_acpi # modules.d configuration file for IBM_ACPI # For more information please read: # README options ibm_acpi experimental=1 hotkey=enable,0xffff ### modules-update: end processing /etc/modules.d/ibm_acpi ### modules-update: start processing /etc/modules.d/ieee80211 # modules.d configuration file for IEEE80211 # Configurable module parameters # ------------------------------ # debug: debug output mask ### modules-update: end processing /etc/modules.d/ieee80211 ### modules-update: start processing /etc/modules.d/ieee80211_crypt # modules.d configuration file for IEEE80211_CRYPT ### modules-update: end processing /etc/modules.d/ieee80211_crypt ### modules-update: start processing /etc/modules.d/ieee80211_crypt_ccmp # modules.d configuration file for IEEE80211_CRYPT_CCMP ### modules-update: end processing /etc/modules.d/ieee80211_crypt_ccmp ### modules-update: start processing /etc/modules.d/ieee80211_crypt_tkip # modules.d configuration file for IEEE80211_CRYPT_TKIP ### modules-update: end processing /etc/modules.d/ieee80211_crypt_tkip ### modules-update: start processing /etc/modules.d/ieee80211_crypt_wep # modules.d configuration file for IEEE80211_CRYPT_WEP ### modules-update: end processing /etc/modules.d/ieee80211_crypt_wep ### modules-update: start processing /etc/modules.d/ipw2200 # modules.d configuration file for IPW2200 # For more information please read: # README.ipw2200 # Configurable module parameters # ------------------------------ # disable: manually disable the radio (default 0 [radio on]) # associate: auto associate when scanning (default on) # auto_create: auto create adhoc network (default on) # led: enable led control on some systems (default 0 off) # debug: debug output mask # channel: channel to limit associate to (default 0 [ANY]) # mode: network mode (0=BSS,1=IBSS) ### modules-update: end processing /etc/modules.d/ipw2200 ### modules-update: start processing /etc/modules.d/x86info # $Header: /var/cvsroot/gentoo-x86/sys-apps/x86info/files/x86info-modules.conf-rc,v 1.2 2004/07/18 04:41:21 dragonheart Exp $ # # Aliases needed for x86info to probe data # these are so the modules auto-load as needed # alias char-major-202 msr alias char-major-203 cpuid alias /dev/cpu/*/msr msr alias /dev/cpu/*/cpuid cpuid ### modules-update: end processing /etc/modules.d/x86info
Did you setup any custom ACPI event handler of some such? This problem makes little or no sense to me, I'm afraid...
I can say that there was some modified acpi scripting but only for a laptop lid switch. I had it happen the last time I booted. No startup for net.eth1, nor was there a shutdown from the previous run, without setting anything. As the laptop is no longer mine, and doesn't in fact have gentoo installed any longer :( I can't give you /var/log/messages. I know that ioeee80211 was coming up with a error, did so when it was part of ipw2200 as well, so I doubt that'd have something to do with it.
The only thing that my ACPI handler takes care of right now is switching to a battery runlevel if the power source is battery, other wise stay with default boot level. But i have confirmed that both runlevel does not have the net.eth1 or net.eth0 in them. At current the only difference between the AC power and Battery runlevel is that the battery has a few settings/init.d scripts to adjust the screen's brightness, and to turn on hard drive spin down and a few other factors, nothing to do with network yet. I want to get this issue resolved before i do any form of network scripting. And what part doesn't make any sense? I'll try to re-example it better. Normal (AC power) bootup this is what happens: - The kernel gets boot up, bah bah.... - bunch of init.d scripts for bootup gets executed - A acpi script checks if it is AC power or BAttery power (in this case its ac power) - loads up the default runlevel and execute its script listings. - login prompt. Now once i've log into the system, if i do any form of ping, other than localhost i get a error, meaning that the network is down, and also i don't have anything hooked up to my gigabyte ethernet, and the wireless light is black (off). So if i want to connect via wired, or wireless i will have to run the /etc/init.d/net.eth? script to have them start up and connect. This is what i want. Now for the battery boot up. (its booting up off battery, not AC power) - kernel boots up bah bah - boot up init.d scripts are ran - default runlevel scripts are ran - local.start is ran and it runs a script that determite if its on battery or AC power. - Its determinted that its on Battery power, so the script switches runlevel to battery runlevel - a few default runlevel init.d scripts are shutdown - a few battery runlevel init.d scripts are started. - login prompt. Now at this point in time, the wireless light is green (on) even though i didn't see ANY output regarding /etc/init.d/net.eth1 starting up, there's nothing on the screen or in dmesg to show that the wireless has started up or anything. so i ping some exteral host and i get a reply back, meaning the wireless is running. then when i execute /etc/init.d/net.eth1 i get a error saying that its already running. now this behavor is what i do not want to happen, i want the wireless light to remain off, and the wireless scripts to remain unran, in other words, its automatically starting itself even though its not anywhere in ANY runlevels, and there is no output messages showing that its starting up, other than the wireless light coming on. I hope this has cleared it up?
I still no clue about this bug report - other than it is not directly related to the ipw2200 driver. Reassigning to GregKH, the hotplug maintainer...
If you load a network device, and it creates a /sys/class/net/ entry, the net.NAME script will be run, bringing the device up (or down if it is removed.) That's the way the hotplug subsystem works. So, don't load the module unless you want the network connection to be up. If you really don't like this for some reason, you can delete some files, to prevent it from happening, but I'm not going to support this at all.
Aha thanks! finally i have something to look into, because I was trying things and couldn't figure things out. But now i have a clearer idea of how hotplug works i can do more research on this and try to get it to work the way i want it. The reason why i opened up a bug report was to try to clartify how and why this was happening, and this post below clartifyed it, so thanks! :-) (In reply to comment #11) > If you load a network device, and it creates a /sys/class/net/ entry, the > net.NAME script will be run, bringing the device up (or down if it is removed.) > > That's the way the hotplug subsystem works. > > So, don't load the module unless you want the network connection to be up. > > If you really don't like this for some reason, you can delete some files, > to prevent it from happening, but I'm not going to support this at all.
(In reply to comment #12) > The reason why i opened up a bug report was to try to clartify how and why this > was happening, and this post below clartifyed it, so thanks! :-) > The forums and mailing lists can also prove as a valuable source of information.