after upgrading udev I am no longer able to operate my atheros chipset wifi card in AP mode. Downgrade to Reproducible: Always Steps to Reproduce: 1. setup system as an access point using the madwifi-ng drivers (not hostapd) 2. upgrade udev 3. reboot Actual Results: I get this output: * Starting ath0 * Configuring wireless network for ath0 Error for wireless request "Set Mode" (8B06) : SET failed on device ath0 ; Invalid argument. * ath0 does not support setting the mode to "master" Expected Results: the correct mode to be set as it did before. downgrading to sys-fs/udev-115-r1 fixes the issue
It looks like this version of UDEV doesn't reference /etc/modules.autoload.d/kernel-2.6 when loading modules? Is this still the correct file to use?
(In reply to comment #1) > It looks like this version of UDEV doesn't reference > /etc/modules.autoload.d/kernel-2.6 when loading modules? > > Is this still the correct file to use? > No, it uses /etc/conf.d/modules which I believe gets created when you update udev.
(In reply to comment #1) > It looks like this version of UDEV doesn't reference > /etc/modules.autoload.d/kernel-2.6 when loading modules? > > Is this still the correct file to use? > Neither /etc/modules.autoload.d/kernel-2.6 nor /etc/conf.d/modules is related to udev, but just baselayout-1/baselayout-2+openrc. Please attach emerge --info. What version of madwifi-ng do you use.
rjs ~ # emerge --info Portage 2.1.4.4 (hardened/x86/2.6, gcc-3.4.6, glibc-2.6.1-r0, 2.6.23-hardened-r9 i686) ================================================================= System uname: 2.6.23-hardened-r9 i686 Intel(R) Celeron(R) CPU 2.93GHz Timestamp of tree: Thu, 08 May 2008 08:35:01 +0000 ccache version 2.4 [disabled] app-shells/bash: 3.2_p33 dev-lang/python: 2.4.4-r9 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r1 sys-devel/automake: 1.4_p6, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-mtune=pentium4 -O2 -pipe -fforce-addr" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /var/bind" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-mtune=pentium4 -O2 -pipe -fforce-addr" DISTDIR="/var/lib/portage/distfiles" FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://128.61.111.10/pub/gentoo http://128.61.111.11/pub/gentoo http://128.61.111.9/pub/gentoo" MAKEOPTS="-j2" PKGDIR="/var/lib/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/opt/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="berkdb cracklib crypt hardened midi nls nptl nptlonly pam pic readline ssl tcpd urandom x86 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias asis auth_digest authn_dbd cern_meta charset_lite dbd dumpio ident imagemap log_forensic proxy proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http" ELIBC="glibc" INPUT_DEVICES="mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i740 i810 imstt mach64 mga neomagic nsc nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga vmware voodoo" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS rjs ~ # equery list madwifi [ Searching for package 'madwifi' in all categories among: ] * installed packages [I--] [ ] net-wireless/madwifi-ng-0.9.3.3 (0) [I--] [ ] net-wireless/madwifi-ng-tools-0.9.3.3 (0)
> Neither /etc/modules.autoload.d/kernel-2.6 nor /etc/conf.d/modules is related > to udev, but just baselayout-1/baselayout-2+openrc. oh ok... I just assumed that when udev loaded a module it would need to know what options we required to use.
It's still the same with madwifi-ng-0.9.4 too.
Do you have Automatic kernel module loading turned on in your kernel?
(In reply to comment #5) > > Neither /etc/modules.autoload.d/kernel-2.6 nor /etc/conf.d/modules is related > > to udev, but just baselayout-1/baselayout-2+openrc. > > oh ok... I just assumed that when udev loaded a module it would need to know > what options we required to use. > options? Do you assume that udev loads a module and picks up options from /etc/modules.autoload.d/kernel-2.6 or /etc/conf.d/modules? This is not the case! The only options modprobe (called by udev) uses automatically are from /etc/modules.d/ and /etc/modprobe.d/
(In reply to comment #8) > options? Do you assume that udev loads a module and picks up options from > /etc/modules.autoload.d/kernel-2.6c Yes, I'd assumed it used the ones from /etc/modules.autoload.d/kernel-2.6 else how else would it know to start the module in AP mode?
(In reply to comment #7) > Do you have Automatic kernel module loading turned on in your kernel? > I do have this option on.... always have done on every system I use. I stopped looking for a fix after a downgrade of udev fixed my problem.
(In reply to comment #7) > Do you have Automatic kernel module loading turned on in your kernel? > Yes, the module is loaded ok just not configured with then options set in /etc/modules.autoload.d/kernel-2.6. For example, my wireless modules are loaded and my wireless interface is configured. However, the "options" that initialise the module into AP mode are't being set. If I add "net.*" to RC_PLUG_SERVICES in /etc/conf.d/rc and reboot I am then able to load them module by hand with this command: modprobe ath_pci autocreate=ap The starting the interface with: /etc/init.d/net.ath0 start This loads everything correctly and sets the interface into "master" mode with no errors displayed on the screen. Oh, and doing things by hand like this correctly even using the latest udev-119.
doh! typo.... That should have been: ....add "!net.*" to RC_PLUG_SERVICES
(In reply to comment #11) > (In reply to comment #7) > > Do you have Automatic kernel module loading turned on in your kernel? > > > > Yes, the module is loaded ok just not configured with then options set in > /etc/modules.autoload.d/kernel-2.6. For example, my wireless modules are loaded > and my wireless interface is configured. However, the "options" that initialise > the module into AP mode are't being set. > > If I add "net.*" to RC_PLUG_SERVICES in /etc/conf.d/rc and reboot I am then > able to load them module by hand with this command: > > modprobe ath_pci autocreate=ap > > The starting the interface with: > > /etc/init.d/net.ath0 start > > This loads everything correctly and sets the interface into "master" mode with > no errors displayed on the screen. > > Oh, and doing things by hand like this correctly even using the latest > udev-119. > echo "options ath_pci autocreate=ap" > /etc/modprobe.d/ath_pci-options && update-modules force then retry with newer udev...
cool, that works :-)
Closing as there is a solution. IMO having module parameter in /etc/modules.autoload.d or /et/conf.d/modules is broken by design as they get skipped when loading is triggered in other ways.