iwm0: device timeout

Testé sur OpenBSD 6.7/amd64.

Parfois si la connection au point d’accès est faible on peut rencontrer le message kernel iwm0: device timeout. En consultant man iwm0:

DIAGNOSTICS
     iwn0: device timeout  A frame dispatched to the hardware for transmission
     did not complete in time.  The driver will reset the hardware.  This
     should not happen.

Une astuce est de rétrograder la vitesse de l’interface de 11n à 11g. On peut afficher les modes disponibles pour l’interface via:

$ ifconfig iwm0 media
iwm0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        lladdr f8:75:a4:c2:6d:50
        index 1 priority 4 llprio 3
        trunk: trunkdev trunk0
        groups: wlan
        media: IEEE802.11 autoselect mode 11g (DS1 mode 11g)
        status: active
        ieee80211: join exodus chan 6 bssid 58:6d:8f:34:b4:73 71% wpakey wpaprotos wpa2 wpaakms psk wpaciphers ccmp wpagroupcipher ccmp
        supported media:
                media autoselect
                media autoselect mediaopt monitor
                media autoselect mode 11a
                media autoselect mode 11a mediaopt monitor
                media autoselect mode 11b
                media autoselect mode 11b mediaopt monitor
                media autoselect mode 11g
                media autoselect mode 11g mediaopt monitor
                media autoselect mode 11n
                media autoselect mode 11n mediaopt monitor

Modifier /etc/hostname.iwm0:

$ cat /etc/hostname.iwm0
media autoselect mode 11g
join ssid wpakey MYWPAKEY
up