Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I am getting this error as a part of this problem here but since this problem is totally different issue I think it is better to consider this issue separately. My wlan0 is down. When I try to turn it on with

$  sudo ifconfig wlan0 up

SIOCSIFFLAGS: Operation not possible due to RF-kill

and then

$ sudo rfkill list all

0: phy0: Wireless LAN 

     Soft blocked: yes

     Hard blocked: no

1: tpacpi_bluetooth_sw: Bluetooth

     Soft blocked: yes

     Hard blocked: yes

What does the error msg mean? What is the RF-kill?

Hardware Specs

  $ sudo lshw -class network
  *-network
       description: Ethernet interface
       product: 82573L Gigabit Ethernet Controller
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: eth0
       version: 00
       serial: 00:16:d3:22:96:c2
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=1.2.20-k2 firmware=0.5-1 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:44 memory:ee000000-ee01ffff ioport:2000(size=32)
  *-network DISABLED
       description: Wireless interface
       product: PRO/Wireless 3945ABG [Golan] Network Connection
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: wlan0
       version: 02
       serial: 00:13:02:46:63:74
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=iwl3945 driverversion=2.6.38-11-generic firmware=15.32.2.9 latency=0 link=no multicast=yes wireless=IEEE 802.11abg
       resources: irq:45 memory:edf00000-edf00fff

OS Version and Kernel Version

$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.04
DISTRIB_CODENAME=natty
DISTRIB_DESCRIPTION="Ubuntu 11.04"
$ uname -r
2.6.38-11-generic

[Update]

When I apply Fossfreedom's suggestion, I get "SIOCSIFFLAGS: No such device". The kernel is for some reason rejecting the card, as pointed by FF.

Dmesg after disabling and enabling wli3945, with Blocked WiFi

# modprobe -r iwl3945
# modprobe iwl3945
# dmesg|tail -n 50
[ 6835.430537] PM: resume of devices complete after 1889.701 msecs
[ 6835.430800] PM: resume devices took 1.888 seconds
[ 6835.430845] PM: Finishing wakeup.
[ 6835.430847] Restarting tasks ... done.
[ 6835.502666] video LNXVIDEO:00: Restoring backlight state
[ 6835.572203] [drm:drm_mode_getfb] *ERROR* invalid framebuffer id
[ 6835.852380] e1000e 0000:02:00.0: irq 46 for MSI/MSI-X
[ 6835.908162] e1000e 0000:02:00.0: irq 46 for MSI/MSI-X
[ 6835.908775] ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 6836.919274] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=600
[ 6837.769253] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=600
[ 6859.097311] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=0
[ 6882.076501] e1000e 0000:02:00.0: irq 46 for MSI/MSI-X
[ 6882.132190] e1000e 0000:02:00.0: irq 46 for MSI/MSI-X
[ 6882.132924] ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 6883.722633] e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: Rx/Tx
[ 6883.722645] e1000e 0000:02:00.0: eth0: 10/100 speed: disabling TSO
[ 6883.723071] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 6894.000044] eth0: no IPv6 routers present
[ 6896.551932] exe (2743): /proc/2743/oom_adj is deprecated, please use /proc/2743/oom_score_adj instead.
[ 8289.212078] usb 1-2: new high speed USB device using ehci_hcd and address 4
[ 8289.280270] hub 1-0:1.0: unable to enumerate USB device on port 2
[ 8289.608059] usb 1-2: new high speed USB device using ehci_hcd and address 5
[ 8291.006963] usb 1-2: USB disconnect, address 5
[ 8291.308072] usb 1-2: new high speed USB device using ehci_hcd and address 6
[ 8291.591228] usb 1-2: USB disconnect, address 6
[ 9598.556083] usb 1-2: new high speed USB device using ehci_hcd and address 7
[ 9599.059441] usb 1-2: USB disconnect, address 7
[11838.072332] iwl3945 0000:03:00.0: Master Disable Timed Out, 100 usec
[11838.072993] iwl3945 0000:03:00.0: PCI INT A disabled
[11850.210319] cfg80211: Calling CRDA to update world regulatory domain
[11850.218431] cfg80211: World regulatory domain updated:
[11850.218436] cfg80211:     (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[11850.218440] cfg80211:     (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[11850.218444] cfg80211:     (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[11850.218448] cfg80211:     (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[11850.218452] cfg80211:     (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[11850.218456] cfg80211:     (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[11850.291510] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
[11850.291515] iwl3945: Copyright(c) 2003-2010 Intel Corporation
[11850.291601] iwl3945 0000:03:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[11850.291624] iwl3945 0000:03:00.0: setting latency timer to 64
[11850.331841] iwl3945 0000:03:00.0: Tunable channels: 13 802.11bg, 23 802.11a channels
[11850.331847] iwl3945 0000:03:00.0: Detected Intel Wireless WiFi Link 3945ABG
[11850.332023] iwl3945 0000:03:00.0: irq 45 for MSI/MSI-X
[11850.332274] cfg80211: Ignoring regulatory request Set by core since the driver uses its own custom regulatory domain 
[11850.332436] ieee80211 phy0: Selected rate control algorithm 'iwl-3945-rs'
[11850.361710] iwl3945 0000:03:00.0: loaded firmware version 15.32.2.9
[11850.361885] iwl3945 0000:03:00.0: Radio disabled by HW RF Kill switch
[11850.365924] iwl3945 0000:03:00.0: Radio disabled by HW RF Kill switch

Dmesg with Unblocked WiFi

# rfkill list all
1: tpacpi_bluetooth_sw: Bluetooth
    Soft blocked: no
    Hard blocked: yes
2: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
# dmesg|tail -n 50
[   27.649606] fb0: inteldrmfb frame buffer device
[   27.649608] drm: registered panic notifier
[   27.649815] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
[   27.662754] HDA Intel 0000:00:1b.0: PCI INT B -> GSI 17 (level, low) -> IRQ 17
[   27.662760] hda_intel: probe_mask set to 0x1 for device 17aa:2010
[   27.662831] HDA Intel 0000:00:1b.0: irq 46 for MSI/MSI-X
[   27.662868] HDA Intel 0000:00:1b.0: setting latency timer to 64
[   27.769460] pcmcia_socket pcmcia_socket0: cs: IO port probe 0x100-0x3af: excluding 0x170-0x177 0x1f0-0x1f7 0x2f8-0x2ff 0x370-0x377
[   27.774801] pcmcia_socket pcmcia_socket0: cs: IO port probe 0x3e0-0x4ff: excluding 0x3f0-0x3f7 0x4d0-0x4d7
[   27.775742] pcmcia_socket pcmcia_socket0: cs: IO port probe 0x820-0x8ff: clean.
[   27.788575] pcmcia_socket pcmcia_socket0: cs: IO port probe 0xc00-0xcf7: clean.
[   27.789382] pcmcia_socket pcmcia_socket0: cs: memory probe 0x0c0000-0x0fffff: excluding 0xc0000-0xd3fff 0xdc000-0xfffff
[   27.789466] pcmcia_socket pcmcia_socket0: cs: memory probe 0xa0000000-0xa0ffffff: clean.
[   27.789547] pcmcia_socket pcmcia_socket0: cs: memory probe 0x60000000-0x60ffffff: excluding 0x60000000-0x60ffffff
[   27.789632] pcmcia_socket pcmcia_socket0: cs: IO port probe 0xa00-0xaff: clean.
[   27.813146] e1000e 0000:02:00.0: irq 44 for MSI/MSI-X
[   27.868221] e1000e 0000:02:00.0: irq 44 for MSI/MSI-X
[   27.868866] ADDRCONF(NETDEV_UP): eth0: link is not ready
[   27.876620] IBM TrackPoint firmware: 0x0e, buttons: 3/3
[   27.892982] input: TPPS/2 IBM TrackPoint as /devices/platform/i8042/serio1/input/input6
[   28.121555] ppdev: user-space parallel port driver
[   29.426589] e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: Rx/Tx
[   29.426597] e1000e 0000:02:00.0: eth0: 10/100 speed: disabling TSO
[   29.426893] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   31.009483] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=0
[   34.474875] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=0
[   40.160038] eth0: no IPv6 routers present
[ 7394.332227] exe (1666): /proc/1666/oom_adj is deprecated, please use /proc/1666/oom_score_adj instead.
[ 7587.420396] iwl3945 0000:03:00.0: PCI INT A disabled
[ 7599.728554] cfg80211: Calling CRDA to update world regulatory domain
[ 7599.736628] cfg80211: World regulatory domain updated:
[ 7599.736632] cfg80211:     (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 7599.736637] cfg80211:     (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7599.736641] cfg80211:     (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 7599.736645] cfg80211:     (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 7599.736649] cfg80211:     (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7599.736653] cfg80211:     (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7599.797314] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
[ 7599.797319] iwl3945: Copyright(c) 2003-2011 Intel Corporation
[ 7599.797397] iwl3945 0000:03:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 7599.797419] iwl3945 0000:03:00.0: setting latency timer to 64
[ 7599.837714] iwl3945 0000:03:00.0: Tunable channels: 13 802.11bg, 23 802.11a channels
[ 7599.837719] iwl3945 0000:03:00.0: Detected Intel Wireless WiFi Link 3945ABG
[ 7599.837880] iwl3945 0000:03:00.0: irq 45 for MSI/MSI-X
[ 7599.838124] Registered led device: phy0-led
[ 7599.838170] cfg80211: Ignoring regulatory request Set by core since the driver uses its own custom regulatory domain 
[ 7599.838335] ieee80211 phy0: Selected rate control algorithm 'iwl-3945-rs'
[ 7599.980440] iwl3945 0000:03:00.0: loaded firmware version 15.32.2.9
[ 7599.980656] iwl3945 0000:03:00.0: Radio disabled by HW RF Kill switch
[ 7599.983562] iwl3945 0000:03:00.0: Radio disabled by HW RF Kill switch

Dmesg and Iwl3945 without Blocked WiFi

# modprobe -r iwl3945
# modprobe iwl3945
# dmesg| tail -n 50
[   29.426597] e1000e 0000:02:00.0: eth0: 10/100 speed: disabling TSO
[   29.426893] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   31.009483] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=0
[   34.474875] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=0
[   40.160038] eth0: no IPv6 routers present
[ 7394.332227] exe (1666): /proc/1666/oom_adj is deprecated, please use /proc/1666/oom_score_adj instead.
[ 7587.420396] iwl3945 0000:03:00.0: PCI INT A disabled
[ 7599.728554] cfg80211: Calling CRDA to update world regulatory domain
[ 7599.736628] cfg80211: World regulatory domain updated:
[ 7599.736632] cfg80211:     (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 7599.736637] cfg80211:     (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7599.736641] cfg80211:     (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 7599.736645] cfg80211:     (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 7599.736649] cfg80211:     (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7599.736653] cfg80211:     (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7599.797314] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
[ 7599.797319] iwl3945: Copyright(c) 2003-2011 Intel Corporation
[ 7599.797397] iwl3945 0000:03:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 7599.797419] iwl3945 0000:03:00.0: setting latency timer to 64
[ 7599.837714] iwl3945 0000:03:00.0: Tunable channels: 13 802.11bg, 23 802.11a channels
[ 7599.837719] iwl3945 0000:03:00.0: Detected Intel Wireless WiFi Link 3945ABG
[ 7599.837880] iwl3945 0000:03:00.0: irq 45 for MSI/MSI-X
[ 7599.838124] Registered led device: phy0-led
[ 7599.838170] cfg80211: Ignoring regulatory request Set by core since the driver uses its own custom regulatory domain 
[ 7599.838335] ieee80211 phy0: Selected rate control algorithm 'iwl-3945-rs'
[ 7599.980440] iwl3945 0000:03:00.0: loaded firmware version 15.32.2.9
[ 7599.980656] iwl3945 0000:03:00.0: Radio disabled by HW RF Kill switch
[ 7599.983562] iwl3945 0000:03:00.0: Radio disabled by HW RF Kill switch
[ 7906.428550] iwl3945 0000:03:00.0: PCI INT A disabled
[ 7913.242835] cfg80211: Calling CRDA to update world regulatory domain
[ 7913.249969] cfg80211: World regulatory domain updated:
[ 7913.249973] cfg80211:     (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 7913.249978] cfg80211:     (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7913.249982] cfg80211:     (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 7913.249986] cfg80211:     (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 7913.249990] cfg80211:     (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7913.249994] cfg80211:     (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 7913.311805] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
[ 7913.311810] iwl3945: Copyright(c) 2003-2011 Intel Corporation
[ 7913.311885] iwl3945 0000:03:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 7913.311907] iwl3945 0000:03:00.0: setting latency timer to 64
[ 7913.352172] iwl3945 0000:03:00.0: Tunable channels: 13 802.11bg, 23 802.11a channels
[ 7913.352177] iwl3945 0000:03:00.0: Detected Intel Wireless WiFi Link 3945ABG
[ 7913.352330] iwl3945 0000:03:00.0: irq 45 for MSI/MSI-X
[ 7913.352601] Registered led device: phy0-led
[ 7913.352642] cfg80211: Ignoring regulatory request Set by core since the driver uses its own custom regulatory domain 
[ 7913.352806] ieee80211 phy0: Selected rate control algorithm 'iwl-3945-rs'
[ 7913.385208] iwl3945 0000:03:00.0: loaded firmware version 15.32.2.9
[ 7913.385384] iwl3945 0000:03:00.0: Radio disabled by HW RF Kill switch
[ 7913.387138] iwl3945 0000:03:00.0: Radio disabled by HW RF Kill switch
share|improve this question

6 Answers 6

up vote 19 down vote accepted

Soft-blocking

The output to sudo rfkill list shows that your network card is "soft-blocked".

This could happen when the wireless card has been signalled to switch-off via the kernel.

Try the following steps:

  1. run in a terminal:

    sudo rfkill unblock wifi; sudo rfkill unblock all

  2. rerun sudo rfkill list to confirm that the card has been unblocked.

  3. reboot

  4. rerun sudo rfkill list again to confirm unblocking as been retained.

  5. rerun sudo lshw -class network - you should now see that the kernel has recognised (or not) the wireless card.

If the wireless kernel module has been recognised (it should not say "unclaimed"), Network Manager should now be able to see wireless networks that are available in your vacinity.


Diagnose the kernel issue

If the network card is not recognised - and you have confirmed sudo rfkill list shows no blocking (i.e. both soft blocked and hard blocked are "no") then add the following to your question:

sudo modprobe -r iwl3945
sudo modprobe iwl3945
dmesg | tail -n 50

Hopefully this will point out the error - for example a firmware issue not loading.

Loading new firmware

If it is a firmware issue then you can try maybe one of the following:

  • install the backports wireless drivers:

i.e.

sudo apt-get install linux-backports-modules-cw-2.6.39-generic

Then reboot - test for software blocking etc.

  • get the latest firmware as follows:

i.e.

wget http://intellinuxwireless.org/iwlwifi/downloads/iwlwifi-3945-ucode-15.32.2.9.tgz

tar xzf iwlwifi-3945-ucode-15.32.2.9.tgz

cd iwlwifi-3945-ucode-15.32.2.9

sudo cp iwlwifi-3945-2.ucode /lib/firmware

Then reboot - test for software blocking etc.

N.B. your dmesg trace should indicate what the name of the firmware it is having an issue with. Possibly you need to rename "iwlwifi-3945-2.ucode" to whatever the name of the firmware it was expecting.

share|improve this answer
    
Observation: if I disable wireless using Fn + F11, it's "hard blocked", not "soft blocked". I guess "soft blocked" means that the software blocks it and pressing a Fn shortcut is a hardware one. Could you confirm it for your devices? –  Lekensteyn Sep 19 '11 at 20:44
    
the unblockking is not retained after rebooting. The "0: phy0: Wireless LAN" became soft-blocked after rebooting, does it mean a software-lock and how to track which thing locks the wlan? –  user25257 Sep 19 '11 at 20:47
    
With no soft/hard blockking with the Wireless, I get "SIOCSIFFLAGS: No such device". I added the output of lshow -command to the question. –  user25257 Sep 19 '11 at 20:59
    
@hhh - the very last message indicates you are hardware blocked - are you definitely sure there is not a Fn type switch or a slider type switch on the wireless card/bios type switch? –  fossfreedom Sep 20 '11 at 15:00
1  
@hhh you should be able to Fn+F5 whilst ubuntu is running to unblock and then doing a modprobe -r iwl3945 followed by modprobe iwl3945. Doing this then no longer shows "HW RF Kill Switch" in your dmesg trace? Can you add links to the bug reports you have read - I've searched but cant find anything similar to your observations. –  fossfreedom Sep 21 '11 at 21:02

I confirm this problem with the Asus X75VD laptop using rt2600pci driver. None of the above suggestions helped me, but on the French forum(1), there is a work-around that does work. Simply suspend the session (close the lid) and reactivate it and the wifi works.

I'm posting this because the other thread specifically for Asus X75VD was marked as a duplicate, and this model doesn't have a physical on/off switch for the wifi, and the fn key sequence doesn't work in this case.

It also appears to be a regression introduced by a bot(2)?

Hopefully there'll be a patch coming soon.

Sam

  1. http://forum.ubuntu-fr.org/viewtopic.php?id=1258361
  2. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1176812
share|improve this answer
    
Thanks a lot for this answer! I've had a similar problem with my Asus laptop and I've tried tons of combinations with rfkill etc. but it was impossible for me to get both soft and hard unblocked at the same time. Weirdly enough this solved it for me! Thanks. –  paldepind Oct 1 '13 at 20:25

Check if bluetooth and wireless are not switching badly; verify that you must have this situation:

$ sudo rfkill list all
0: hci0: Bluetooth
    Soft blocked: yes
    Hard blocked: no
1: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

I solved my problem with:

$sudo rfkill block bluetooth
$sudo rfkill unblock wifi
share|improve this answer
    
That solved it for me, not the accepted answer. Please note that I had to do ifconfig wlan0 up after your commands in order to make it work. –  hakermania Jan 8 at 13:17

disable your hardwire connection and press the keyboard key that enables your wireless device. This is what solved the same error for me.

share|improve this answer

For my ASUS R704V running Ubuntu 13.10 none of the above proposals worked. Apparently the kernel drivers and the hardware disagree about the meaning of the logical levels "0" and "1" as "blocked" and "not blocked".

But I found a strange solution that yet works reliably:

  • suspend the system to RAM (either by hitting the SUSPEND-key or by using the Suspend entry in the Logout-menu at right of the upper panel)
  • wait for some seconds
  • press the power button to restart the system

The whole process will take less than 5 seconds.

The output to 'rfkill list all' finally shows

0: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
1: asus-wlan: Wireless LAN
    Soft blocked: no
    Hard blocked: no

The NetworkManager will activate the WIFI and should offer access points to connect to.

share|improve this answer

Workaround without need to suspend the session

Having similar Asus laptop, I had the same problem with wifi and used this suspend session workaround and it's quite bothersome to have to suspend it every time.

However, I've found a solution in Fedora forums that also works in Ubuntu (it probably works for any distro):

As a root, create a file with a name like asus-wifi.conf in /etc/modprobe.d/ containing:

options asus_nb_wmi wapf=1

After refoot, wifi should be on.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.