web-dev-qa-db-fra.com

Le WiFi n'est pas disponible après le redémarrage dans Ubuntu-16.04.4 LTS

Mon WiFi fonctionnait parfaitement dans Ubuntu 16.04.4. J'ai redémarré mon ordinateur portable et après m'être connecté, nm-applet n'a montré aucun point d'accès WiFi. Le modem WiFi est opérationnel. Mais mon nm-applet n'a rien montré.

Mais même dans ce cas, mon WiFi ne fonctionne pas.

$ iwconfig donne

lo        no wireless extensions.

enp3s0    no wireless extensions.

La version de mon noyau: 4.4.0-116-generic


$ls /lib/modules/4.4.0-116-generic/updates/dkms/ donne

wl.ko

$ lspci -vvnn | grep -A 9 Network donne

02:00.0 Network controller [0280]: Broadcom Limited BCM43142 802.11b/g/n [14e4:4365] (rev 01)
    DeviceName: NAMI
    Subsystem: Hewlett-Packard Company BCM43142 802.11b/g/n [103c:804a]
    Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Interrupt: pin A routed to IRQ 3
    Region 0: Memory at f0c00000 (64-bit, non-prefetchable) [size=32K]
    Capabilities: <access denied>
    Kernel modules: bcma, wl

$ lshw -C network crache

*-network UNCLAIMED
   description: Network controller
   product: BCM43142 802.11b/g/n
   vendor: Broadcom Limited
   physical id: 0
   bus info: pci@0000:02:00.0
   version: 01
   width: 64 bits
   clock: 33MHz
   capabilities: pm msi pciexpress cap_list
   configuration: latency=0
   resources: memory:f0c00000-f0c07fff
*-network
   description: Ethernet interface
   product: RTL810xE PCI Express Fast Ethernet controller
   vendor: Realtek Semiconductor Co., Ltd.
   physical id: 0
   bus info: pci@0000:03:00.0
   logical name: enp3s0
   version: 07
   serial: fc:3f:db:d5:e7:d7
   size: 100Mbit/s
   capacity: 100Mbit/s
   width: 64 bits
   clock: 33MHz
   capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
   configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full firmware=rtl8106e-1_0.0.1 06/29/12 ip=192.168.1.8 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s
   resources: irq:32 ioport:2000(size=256) memory:f0b00000-f0b00fff memory:f0800000-f0803fff


$ Sudo apt --reinstall bcmwl-kernel-source

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libqscintilla2-12v5 libqscintilla2-l10n libqt4-opengl linux-headers-4.4.0-119
  octave-info thermald
Use 'Sudo apt autoremove' to remove them.
The following packages will be upgraded:
  bcmwl-kernel-source
1 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.
Need to get 0 B/1,544 kB of archives.
After this operation, 51.2 kB of additional disk space will be used.
(Reading database ... 374783 files and directories currently installed.)
Preparing to unpack .../bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu1~1.2_AMD64.deb ...
Removing all DKMS Modules
Done.
Unpacking bcmwl-kernel-source (6.30.223.271+bdcom-0ubuntu1~1.2) over (6.30.223.248+bdcom-0ubuntu8) ...
Setting up bcmwl-kernel-source (6.30.223.271+bdcom-0ubuntu1~1.2) ...
Loading new bcmwl-6.30.223.271+bdcom DKMS files...
Building only for 4.4.0-116-generic
Building for architecture x86_64
Building initial module for 4.4.0-116-generic
Done.

wl:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.4.0-116-generic/updates/dkms/

depmod....

DKMS: install completed.
modprobe: ERROR: could not insert 'wl': Exec format error
update-initramfs: deferring update (trigger activated)
Processing triggers for shim-signed (1.33.1~16.04.1+13-0ubuntu2) ...
Secure Boot not enabled on this system.
Processing triggers for initramfs-tools (0.122ubuntu8.11) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-116-generic

2

J'ai trouvé la solution de ce post . Comme mentionné dans l'article, il s'agit simplement d'une solution de contournement et non d'une solution au problème. Selon l'article, il y a un bogue dans le chargement de la magie du module retpoline . Donc ce que nous faisons ici est juste de le charger, peu importe si RETPOLINE est disponible ou non. Cela a résolu le problème pour moi. Merci chili555 , pour votre aide.

vim /usr/src/linux-headers-*/include/linux/vermagic.h

ÉTAPE 1 : Recherchez le #ifdef RETPOLINE, commentez-le (\\#ifdef RETPOLINE) et ajoutez une ligne #if 1 sous le commentaire. ligne. Le fichier final devrait ressembler à celui donné ci-dessous et sauvegarder le fichier.

#include <generated/utsrelease.h>

/* Simply sanity version stamp for modules. */
#ifdef CONFIG_SMP
#define MODULE_VERMAGIC_SMP "SMP "
#else
#define MODULE_VERMAGIC_SMP ""
#endif
#ifdef CONFIG_PREEMPT
#define MODULE_VERMAGIC_PREEMPT "preempt "
#else
#define MODULE_VERMAGIC_PREEMPT ""
#endif
#ifdef CONFIG_MODULE_UNLOAD
#define MODULE_VERMAGIC_MODULE_UNLOAD "mod_unload "
#else
#define MODULE_VERMAGIC_MODULE_UNLOAD ""
#endif
#ifdef CONFIG_MODVERSIONS
#define MODULE_VERMAGIC_MODVERSIONS "modversions "
#else
#define MODULE_VERMAGIC_MODVERSIONS ""
#endif
#ifndef MODULE_Arch_VERMAGIC
#define MODULE_Arch_VERMAGIC ""
#endif
//#ifdef RETPOLINE
#if 1
#define MODULE_VERMAGIC_RETPOLINE "retpoline "
#else
#define MODULE_VERMAGIC_RETPOLINE ""
#endif

#define VERMAGIC_STRING                     \
    UTS_RELEASE " "                         \
    MODULE_VERMAGIC_SMP MODULE_VERMAGIC_PREEMPT                 \
    MODULE_VERMAGIC_MODULE_UNLOAD MODULE_VERMAGIC_MODVERSIONS             \
    MODULE_Arch_VERMAGIC                    \
    MODULE_VERMAGIC_RETPOLINE

ÉTAPE 2 : Reconfigurez maintenant le paquet bcmwl-kernel-source Sudo dpkg-reconfigure bcmwl-kernel-source.
ÉTAPE 3 : Redémarrez maintenant le gestionnaire de réseau Sudo service network-manager restart.
ÉTAPE 4 : profitez de votre WiFi :)

1