0

So my computer runs on Ubuntu 18.04 and since I installed it the WiFi drops randomly and I can't relaunch it because it doesn't do anything with the GUI and when I type "service network-manager restart" it loops and displays : "iwlwifi 0000:02:00.0: Failed to run INIT ucode: -5" and "Failed to start RT ucode: -5". I already tried to install the drivers from Intel's website for my network card which is an Intel 3160 and it didn't change anything. Thank you

Here is the dmesg output after wifi drops.

    [ 1606.095583] CPU: 3 PID: 0 Comm: swapper/3 Not tainted 4.13.0-36-generic #40~16.04.1-Ubuntu

    [ 1606.095585] Hardware name: LENOVO 80M0/Mini, BIOS C0CN23WW 03/31/2015

    [ 1606.095589] task: ffff89bb7a44c200 task.stack: ffffa42fc06ac000

    [ 1606.095615] RIP: 0010:iwl_trans_pcie_grab_nic_access+0xe7/0xf0 [iwlwifi]

    [ 1606.095619] RSP: 0018:ffff89bb7fd83db8 EFLAGS: 00010086

    [ 1606.095624] RAX: 000000000000003d RBX: ffff89bb765d0018 RCX: 0000000000000000

    [ 1606.095628] RDX: 0000000000000000 RSI: 00000000000000f6 RDI: 0000000000000300

    [ 1606.095631] RBP: ffff89bb7fd83dd8 R08: 0000000000000001 R09: 000000000000032b

    [ 1606.095634] R10: 0000000000000007 R11: 000000000000032b R12: 0000000000000000

    [ 1606.095638] R13: ffff89bb765d8f20 R14: ffff89bb7fd83de8 R15: ffff89bb765d0018

    [ 1606.095643] FS:  0000000000000000(0000) GS:ffff89bb7fd80000(0000) knlGS:0000000000000000

    [ 1606.095646] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033

    [ 1606.095650] CR2: 00007fd4b6fc6000 CR3: 0000000018c0a000 CR4: 00000000001006e0

    [ 1606.095653] Call Trace:

    [ 1606.095658]  <IRQ>

    [ 1606.095683]  iwl_read_prph+0x38/0x90 [iwlwifi]

    [ 1606.095710]  iwl_trans_pcie_log_scd_error+0x126/0x1f0 [iwlwifi]

    [ 1606.095734]  ? iwl_pcie_txq_inc_wr_ptr+0xf0/0xf0 [iwlwifi]

    [ 1606.095758]  iwl_pcie_txq_stuck_timer+0x4b/0x70 [iwlwifi]

    [ 1606.095767]  call_timer_fn+0x37/0x140

    [ 1606.095773]  run_timer_softirq+0x1f1/0x460

    [ 1606.095780]  ? ktime_get+0x3e/0xa0

    [ 1606.095787]  ? lapic_next_deadline+0x26/0x30

    [ 1606.095794]  __do_softirq+0xf2/0x287

    [ 1606.095803]  irq_exit+0xb6/0xc0

    [ 1606.095809]  smp_trace_apic_timer_interrupt+0x74/0xa0

    [ 1606.095815]  smp_apic_timer_interrupt+0xe/0x10

    [ 1606.095820]  apic_timer_interrupt+0x1af/0x1c0

    [ 1606.095824]  </IRQ>

    [ 1606.095831] RIP: 0010:cpuidle_enter_state+0x135/0x2f0

    [ 1606.095835] RSP: 0018:ffffa42fc06afe68 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff10

    [ 1606.095841] RAX: 0000000000000000 RBX: 0000000000000005 RCX: 000000000000001f

    [ 1606.095844] RDX: 0000000000000000 RSI: 000000003b19be84 RDI: 0000000000000000

    [ 1606.095848] RBP: ffffa42fc06afea0 R08: 000000000000742c R09: 0000000000000018

    [ 1606.095851] R10: ffffa42fc06afe38 R11: 00000000000019d4 R12: 0000000000000005

    [ 1606.095855] R13: ffff89bb7fdab020 R14: ffffffff95f7a218 R15: 00000175ec205011

    [ 1606.095864]  ? cpuidle_enter_state+0x123/0x2f0

    [ 1606.095871]  cpuidle_enter+0x17/0x20

    [ 1606.095877]  call_cpuidle+0x23/0x40

    [ 1606.095882]  do_idle+0x18c/0x1f0

    [ 1606.095888]  cpu_startup_entry+0x73/0x80

    [ 1606.095893]  start_secondary+0x193/0x1d0

    [ 1606.095900]  secondary_startup_64+0x9f/0xa0

    [ 1606.095905] Code: 00 00 e8 9d 59 c0 d4 eb ab 48 89 df be 24 00 00 00 c6 05 69 f1 01 00 01 e8 67 eb fe ff 48 c7 c7 c8 2e 92 c0 89 c6 e8 5a e7 3d d4 <0f> ff eb c1 0f 1f 44 00 00 0f 1f 44 00 00 55 49 c7 c0 08 2f 92 

    [ 1606.096025] ---[ end trace f4a85b56dc9c8220 ]---

    [ 1606.195965] iwlwifi 0000:02:00.0: Queue 10 is active on fifo 2 and stuck for 10000 ms. SW [104, 110] HW [90, 90] FH TRB=0x05a5a5a5a

    [ 1608.000851] iwlwifi 0000:02:00.0: Failed to wake NIC for hcmd

    [ 1608.001110] iwlwifi 0000:02:00.0: Error sending ADD_STA: enqueue_hcmd failed: -5

    [ 1618.230154] iwlwifi 0000:02:00.0: Queue 5 is active on fifo 2 and stuck for 10000 ms. SW [13, 14] HW [90, 90] FH TRB=0x05a5a5a5a
5
  • Actually it says also "iwlwifi 0000:02:00.0: Could not load the [0] uCode section".
    – Chams
    May 27 '18 at 21:01
  • Some optimization can be done to make iwlwifi work better, see iwlwifi on arch-linux wiki.
    – GAD3R
    May 27 '18 at 21:13
  • A dmesg after wifi drop would help a LOT.
    – V-Mark
    May 28 '18 at 13:09
  • Exactly same problem here. Sep 23 '18 at 23:52
  • I've had this happen before and wrote a script that "fixes" this but only temporarily. The problem resurfaces after time. Not sure what triggers this. I'm using kernel 4.18.8 but have tried downgrading all the way to 4.15.1 and the problem persists.
    – RyanNerd
    Sep 26 '18 at 9:57
1

This does not fix the issue as the wifi will crap out again eventually -- all this script does is make it so you have wifi again without needing to reboot (save as fixwifi.sh and run as sudo):

#!/bin/sh

# If an interface name was not passed in then assume that wlan0 is the interface name.
if [ -z "$1" ]; then
    interface="wlan0"
else
    interface=$1
fi

# Figure out what pci slot Linux has assigned the Network controller: Intel Corporation Wireless 7260
wirelessPCI=$(lspci |grep "Wireless 7260")
pci=$(echo ${wirelessPCI} | awk '{ print $1 }')
devicePath="/sys/bus/pci/devices/0000:$pci/remove"

# Not the best solution as this script can hang. 
# But since if this script fails the ONLY way to revive the wifi anyway is a reboot...
# Feel free to improve the script if you have the scriptfu ninja skills to do so.
while true; do

    # Tell Linux to remove the wifi card from the PCI device list only if it exists in the first place.
    if [ -f $devicePath ]; then
        echo 1 | sudo tee $devicePath > /dev/null
        sleep 1
    fi

    # Reprobe the driver modules in case we have removed them in a failed attempt to wake the network card.
    sudo modprobe iwlmvm
    sudo modprobe iwlwifi

    # Try to have Linux bring the network card back online as a PCI device. 
    echo 1 | sudo tee /sys/bus/pci/rescan > /dev/null
    sleep 1

    # Check if Linux managed to bring the network card back online as a PCI device.
    if [ -f $devicePath ]; then

        # Looks like we are back in business. 
        # So we try to set the PCI slot with some voodoo I don't understand that the Intel devs told me to try.
        # https://bugzilla.kernel.org/show_bug.cgi?id=191601
        sudo setpci -s $pci 0x50.B=0x40

        # Bring the wireless network interface up.
        sudo ifconfig $interface up

        # Did the wifi interface actually go live?
        exitCode=$?
        if [ $exitCode -eq 0 ];then

            # Not sure why in the hell this is not the default for wireless intefaces.
            # It is well documented that: (power_management === ON) === Wifi-Stupidity
            sudo iwconfig $interface power off

            # The exit code will be the exit code of our attempt at turning power management off for $interface/wlan0.
            break
        fi
    else
        # It's worse than that the wifi's dead Jim! Dead Jim! Dead!
        # We tell Linux to remove the the wifi driver modules and loop back in an attempt to revive the wifi.
        sudo modprobe -r iwlmvm
        sudo modprobe -r iwlwifi
    fi
done

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.