WiFi has disappeared from the top menu

Fed 41, recently updated. I left my HP elitebook in “suspend” overnight, in the morning the wifi tab was gone from top menu and so was the connection. I’m using my phone via USB connection in order to write this, so there is wifi signal present. Bluetooth still there. Have had computer 6 months, never any connection problems before. I’m a new Linux user, a refugee from “evil empire” OS’s. have always been a pampered GUI user before. Using the terminal is something I can do if I have rather clear instructions only sorry.

It sounds like the PCI device might need reset: Use sysfs to restart failed PCI devices (WiFi cards, sound cards, etc.) - Fedora Magazine

Also, make sure your WiFi device isn’t simply turned off via a manual switch on the laptop somewhere. I’ve seen some models that had sliding switches on the side that could easily be bumped without the user realizing it was even there. (But those were pretty old laptops. I think it is usually a keyboard media key these days.)

Thank you! Good info.

Actually it hasn’t gone that well. The 1spci command doesn’t seem to work, so I can’t obtain the necessary address for the PCI.

Please post the output of the following:

ip a

uname -a

sudo dmesg

As to the problem with lspci not being available, what software packages are installed will vary slightly depending on which edition of Fedora Linux you have chosen. You can add and remove packages using the dnf command.

Any time you get a “file/command not found” error message, you can use the dnf provides '*/<filename>' to find out what package provides the needed file and then install the package with dnf install <package-name>. For example:

$ dnf provides '*/lspci'
Updating and loading repositories:
 Fedora 41 - x86_64                                                                    100% |  49.2 KiB/s |  31.8 KiB |  00m01s
 Fedora 41 openh264 (From Cisco) - x86_64                                              100% |  10.0 KiB/s |   8.6 KiB |  00m01s
 Fedora 41 - x86_64 - Updates                                                          100% |   1.9 MiB/s |  30.6 MiB |  00m16s

Repositories loaded.
pciutils-3.13.0-5.fc41.x86_64 : PCI bus related utilities
Repo         : @System
Matched From : 
Provide      : pciutils = 3.13.0-5.fc41

pciutils-3.13.0-5.fc41.i686 : PCI bus related utilities
Repo         : fedora
Matched From : 
Provide      : pciutils = 3.13.0-5.fc41

pciutils-3.13.0-5.fc41.x86_64 : PCI bus related utilities
Repo         : fedora
Matched From : 
Provide      : pciutils = 3.13.0-5.fc41

The above output show that the pciutils package provides the lspci command. So you would need to run dnf install pciutils before it will work.

1 Like

Wow. That’s a heap of code! I hope it’s OK in a libre doc, please find attached.

Cheers … Mark

(Attachment Wifi problem code.odt is missing)

Wow. That’s a heap of code. Please find pdf attached.

Cheers … Mark

(Attachment Wifi problem code.pdf is missing)

A better way to share those sort of log messages (especially when they are long) is to pipe the output of the command to fpaste (e.g. uname -a | fpaste), then share the HTTP link here. (Note that, by default, the content will be erased after 24 hours.)

Hi Gregory. You guys are awesome, I’m getting some education here. Yes, I need to take courses in Fedora. I know!

OK, here’s ip a: https://paste.centos.org/view/0620f11e

Here’s uname -a: https://paste.centos.org/view/31627080

Here’s sudo dmesg: https://paste.centos.org/view/dfdd14e2

Many thanks … Mark

This appears to be the relevant part of the dmesg logs. You will want to search for more information about the device id at the top (8086:2723) and the error message at the end (probe with driver iwlwifi failed with error -110).

$ grep 0000:6d:00.0 dmesg.log
[    0.476686] pci 0000:6d:00.0: [8086:2723] type 00 class 0x028000 PCIe Endpoint
[    0.476760] pci 0000:6d:00.0: BAR 0 [mem 0xe0100000-0xe0103fff 64bit]
[    0.477061] pci 0000:6d:00.0: PME# supported from D0 D3hot D3cold
[    0.551313] pci 0000:6d:00.0: Adding to iommu group 21
[   23.062877] iwlwifi 0000:6d:00.0: enabling device (0000 -> 0002)
[   23.420796] iwlwifi 0000:6d:00.0: CSR_RESET = 0x10
[   23.420800] iwlwifi 0000:6d:00.0: Host monitor block 0x0 vector 0x0
[   23.420917] iwlwifi 0000:6d:00.0:     value [iter 0]: 0x3f7f8830
[   23.420967] iwlwifi 0000:6d:00.0:     value [iter 1]: 0x3f7f8c30
[   23.421042] iwlwifi 0000:6d:00.0:     value [iter 2]: 0x3f7f0030
[   23.421178] iwlwifi 0000:6d:00.0:     value [iter 3]: 0x3f7f0830
[   23.421312] iwlwifi 0000:6d:00.0:     value [iter 4]: 0x3f7f0c30
[   23.421438] iwlwifi 0000:6d:00.0:     value [iter 5]: 0x3f7f0830
[   23.421484] iwlwifi 0000:6d:00.0:     value [iter 6]: 0x3f7f8832
[   23.421531] iwlwifi 0000:6d:00.0:     value [iter 7]: 0x3f7f0432
[   23.421582] iwlwifi 0000:6d:00.0:     value [iter 8]: 0x3f7f8c30
[   23.421633] iwlwifi 0000:6d:00.0:     value [iter 9]: 0x3f7f8430
[   23.421684] iwlwifi 0000:6d:00.0:     value [iter 10]: 0x3f7f8830
[   23.421735] iwlwifi 0000:6d:00.0:     value [iter 11]: 0x3f7f0430
[   23.421787] iwlwifi 0000:6d:00.0:     value [iter 12]: 0x3f7f0430
[   23.421838] iwlwifi 0000:6d:00.0:     value [iter 13]: 0x3f7f0830
[   23.421889] iwlwifi 0000:6d:00.0:     value [iter 14]: 0x3f7f0430
[   23.421891] iwlwifi 0000:6d:00.0: Host monitor block 0x0 vector 0x1
[   23.421941] iwlwifi 0000:6d:00.0:     value [iter 0]: 0x044466c2
[   23.421992] iwlwifi 0000:6d:00.0:     value [iter 1]: 0x044466c2
[   23.422062] iwlwifi 0000:6d:00.0:     value [iter 2]: 0x044466c2
[   23.422197] iwlwifi 0000:6d:00.0:     value [iter 3]: 0x044466c2
[   23.422329] iwlwifi 0000:6d:00.0:     value [iter 4]: 0x044466c2
[   23.422448] iwlwifi 0000:6d:00.0:     value [iter 5]: 0x044466c2
[   23.422499] iwlwifi 0000:6d:00.0:     value [iter 6]: 0x044466c2
[   23.422545] iwlwifi 0000:6d:00.0:     value [iter 7]: 0x044466c2
[   23.422596] iwlwifi 0000:6d:00.0:     value [iter 8]: 0x044466c2
[   23.422647] iwlwifi 0000:6d:00.0:     value [iter 9]: 0x044466c2
[   23.422699] iwlwifi 0000:6d:00.0:     value [iter 10]: 0x044466c2
[   23.422750] iwlwifi 0000:6d:00.0:     value [iter 11]: 0x044466c2
[   23.422796] iwlwifi 0000:6d:00.0:     value [iter 12]: 0x044466c2
[   23.422843] iwlwifi 0000:6d:00.0:     value [iter 13]: 0x044466c2
[   23.422894] iwlwifi 0000:6d:00.0:     value [iter 14]: 0x044466c2
[   23.422896] iwlwifi 0000:6d:00.0: Host monitor block 0x0 vector 0x6
[   23.422946] iwlwifi 0000:6d:00.0:     value [iter 0]: 0xb00c4471
[   23.422997] iwlwifi 0000:6d:00.0:     value [iter 1]: 0xa00c4471
[   23.423068] iwlwifi 0000:6d:00.0:     value [iter 2]: 0xb00c4471
[   23.423203] iwlwifi 0000:6d:00.0:     value [iter 3]: 0xb00c4471
[   23.423342] iwlwifi 0000:6d:00.0:     value [iter 4]: 0xe00c4471
[   23.423462] iwlwifi 0000:6d:00.0:     value [iter 5]: 0xb00c4471
[   23.423508] iwlwifi 0000:6d:00.0:     value [iter 6]: 0xf00c4471
[   23.423559] iwlwifi 0000:6d:00.0:     value [iter 7]: 0xf00c4471
[   23.423610] iwlwifi 0000:6d:00.0:     value [iter 8]: 0xe00c4471
[   23.423661] iwlwifi 0000:6d:00.0:     value [iter 9]: 0xa00c4471
[   23.423713] iwlwifi 0000:6d:00.0:     value [iter 10]: 0xf00c4471
[   23.423764] iwlwifi 0000:6d:00.0:     value [iter 11]: 0xa00c4471
[   23.423815] iwlwifi 0000:6d:00.0:     value [iter 12]: 0xe00c4471
[   23.423866] iwlwifi 0000:6d:00.0:     value [iter 13]: 0xb00c4471
[   23.423917] iwlwifi 0000:6d:00.0:     value [iter 14]: 0xa00c4471
[   23.423919] iwlwifi 0000:6d:00.0: Host monitor block 0x22 vector 0x0
[   23.423969] iwlwifi 0000:6d:00.0:     value [iter 0]: 0x00000000
[   23.424226] iwlwifi 0000:6d:00.0: probe with driver iwlwifi failed with error -110

Edit: Here are some quick results from internet searchs.


glebtv – comment 49:

I have exactly the same problem (error -110) with an Intel(R) Wi-Fi 6 AX200 160MHz, REV=0x340 both on 5.2.11 and 5.3.0-rc6

The problem for me only happens when powering off windows, then power on and boot into linux. A reboot from windows clears the problem, and after it’s working it doesn’t happen again unless powering off windows. Rebooting linux, powering off linux etc does not help if the problem has occured, and does not cause it.

I think windoows driver does something when powering off the machine which linux driver can’t undo.


sandy.8925 – comment 9:

Well if the Windows Fast boot disable workaround is real, then this comment from the driver code might explain it “Later devices (5xxx/6xxx/1xxx) use non-volatile SRAM, and do not need to save/restore it.”

If Windows writes some values to the device SRAM, and it remains after shutdown and reboot as well, it might be screwing up device state in dual boot situations. And then I wonder what happens with hibernate as well. Is there any way to just tell the drivers in both Windows and Linux to always re-init from scratch and not rely on the device state staying the same?


sandy.8925 – comment 16:

Got the same issue again in Linux kernel 5.18.12, Firmware: iwlwifi-cc-a0-71.ucode

Disabling Windows Fast Startup fixed the issue for me.


Are you dual booting with MS Windows?

Edit2: There is an old workaround posted at the end of this thread:

In case someone’s still interested in this, I found out that initiating a PCI reset of the device allowed to properly initialize it (and load the iwlwifi module) when coming from a Windows hibernation or Fast Startup state (-110 error).

This seems to be working fine, with no visible side-effect, either on the Linux or Windows side (tested on kernel 5.8.1):

$ cat /etc/modprobe.d/iwlwifi.conf
# PCIe reset device before loading the module.
#   Windows Hibernation/FastBoot may leave it in an unusable state
#   Replace 0000:00:14.3 below by the actual PCI address of the device
install iwlwifi echo 1 > /sys/bus/pci/devices/0000\:6d\:00.0/reset ; \
        /sbin/modprobe --ignore-install iwlwifi

Hope this helps.

Awesome. Thanks heaps … Mark