In my logs I can see: ********* Nov 11 16:03:15 localhost acx_set_status(1):SCANNING Nov 11 16:03:15 localhost start_scan: seems like previous scan is still running. Not starting anew. Please report Nov 11 16:03:15 localhost get_mask 0x00000000, set_mask 0x00001000 - after updat e Nov 11 16:03:15 localhost sta_list_add: sta=00:02:2D:BC:C2:1E Nov 11 16:03:15 localhost get_mask 0x00000000, set_mask 0x00011000 Nov 11 16:03:15 localhost important setting has been changed. Need to update pac ket templates, too Nov 11 16:03:15 localhost updating packet templates Nov 11 16:03:15 localhost rates_basic:0027->0F, rates_supported:0127->1F Nov 11 16:03:15 localhost BSS_Type = 2 Nov 11 16:03:15 localhost JoinBSSID MAC:00:02:2D:BC:C2:1E Nov 11 16:03:15 localhost acx_set_status(1):SCANNING Nov 11 16:03:15 localhost start_scan: seems like previous scan is still running. Not starting anew. Please report ********* So it is scannig a few times. My /etc/conf.d/net: ********* modules=("iwconfig") sleep_scan_wlan0=("3") iwpriv_wlan0=("SetSPreamble 0") iwconfig_wlan0=("sens 190") iwconfig_wlan0=("retry 50") essid_wlan0=("kunow") mode_wlan0=("managed") rate_wlan0=("auto") channel_wlan0=("2") config_kunow=("192.168.1.16") gateway_kunow=("192.168.1.1") ********** So it seems, that sleep_scan_wlan0=("3") don`t work. It never waits these 3 seconds. Instead it scan a few times. Reproducible: Always Steps to Reproduce: 1. 2. 3. Actual Results: Scans a few times because it doesn`t wait until the first scan finishes Expected Results: Send one request to scan and wait until this scan ends My emerge info: ********** Portage 2.0.51.22-r3 (default-linux/x86/2005.1, gcc-3.3.5-20050130, glibc-2.3.5-r1, 2.6.14-ck3-maxer i686) ================================================================= System uname: 2.6.14-ck3-maxer i686 AMD Duron(tm) Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.12 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=i686 -pipe -fomit-frame-pointer" 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/env.d" CXXFLAGS="-march=i686 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" LINGUAS="pl" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X alsa apm arts audiofile avi berkdb bitmap-fonts bzip2 cdr crypt cups curl eds emboss encode esd exif expat fam ffmpeg foomaticdb fortran gdbm gif glut gnome gphoto2 gpm gstreamer gtk gtk2 hal idn imagemagick imlib ipv6 ithreads java jpeg kde lcms libg++ libwww mad mikmod mng motif mozilla mp3 mpeg ncurses nls nptl nptlonly ogg oggvorbis opengl oss pam pcre pdflib perl png python qt quicktime readline samba sdl spell ssl tcpd threads tiff truetype truetype-fonts type1-fonts udev usb vorbis wmf xine xml2 xmms xv xvid zlib linguas_pl userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, MAKEOPTS, PORTDIR_OVERLAY
It appears that it is not gentoo bug, but acx driver...
Changing my mind. Net script at first modprobe, than it ups the interface, without setting essid first. It starts a scan, because default mode is "Managed" and we want to find an AP. Nov 15 15:55:37 localhost 01986432 ==> acxpci_e_open Nov 15 15:55:37 localhost module count++ Nov 15 15:55:37 localhost request_irq 10 successful Nov 15 15:55:37 localhost 01986443 ==> acxpci_s_up Nov 15 15:55:37 localhost 01986444 ==> enable_acx_irq Nov 15 15:55:37 localhost 01986444 <== enable_acx_irq Nov 15 15:55:37 localhost 01986444 ==> acx_set_status Nov 15 15:55:37 localhost acx_set_status(1):SCANNING Nov 15 15:55:37 localhost 01986444 ==> acx_set_timer Nov 15 15:55:37 localhost acx_set_timer(1000 ms) Nov 15 15:55:37 localhost 01986444 <== acx_set_timer Nov 15 15:55:37 localhost 01986444 <== acx_set_status ... And only then you sets essid, that restarts the scan, because probe requests contain essid, and we need to update it. Nov 15 15:55:42 localhost 01990245 ==> acx_ioctl_set_essid Nov 15 15:55:42 localhost Set ESSID ' kunow', length 6, flags 0x0001 Nov 15 15:55:42 localhost 01990245 <== acx_ioctl_set_essid: FFFFFF8D Nov 15 15:55:42 localhost 01990245 ==> acx_ioctl_commit Nov 15 15:55:42 localhost 01990245 ==> acx_s_update_card_settings ... Nov 15 15:55:42 localhost BSS_Type = 2 Nov 15 15:55:42 localhost JoinBSSID MAC:00:00:00:00:00:00 Nov 15 15:55:42 localhost caps updated from 0x0040 to 0x0040 Nov 15 15:55:42 localhost 01990256 <== acx_s_cmd_join_bssid Nov 15 15:55:42 localhost 01990256 ==> acx_l_sta_list_init Nov 15 15:55:42 localhost 01990256 <== acx_l_sta_list_init Nov 15 15:55:42 localhost 01990256 ==> acx_set_status Nov 15 15:55:42 localhost acx_set_status(1):SCANNING Nov 15 15:55:42 localhost 01990256 ==> acx_set_timer Nov 15 15:55:42 localhost acx_set_timer(1000 ms) Nov 15 15:55:42 localhost 01990256 <== acx_set_timer Nov 15 15:55:42 localhost 01990256 <== acx_set_status
We only ask for a scan once - so we can find what AP's are available. If the driver does more than one scan, then that is the drivers fault, error or design. fex, the rt2x00 driver scans around 5 times whereas the prism54 driver only scans the once. This is a driver issue and should be reported upstream by yourself