この問題はここ数年で多くの人に起こったようで、いくつかのフォーラムや周りの質問で議論されています。しかし、そのような議論のほとんどは明確な解決策なしに死んでしまうか、明確に述べられていなかったため、ここでもう一度試してみました。
私はラップトップ(Dell Precision M3800)を使用してパブリックWiFiネットワーク(正確には大学のネットワーク)に接続しようとしています。接続は最初は成功していましたが、しばらくすると(どれくらいかわかりませんでした。数分、数時間になることもあります)、動作しなくなります。
ここで作業を停止することで、明らかに接続が確立されている間、実際にいくつかのWebサイトにアクセスしたり、アドレスにpingを実行したりしても、最初は何も起こりません特に、この時点では、接続はすべて接続されたままです。 Network Managerアイコン、およびnmcli dev
、nmcli g
、およびnmcli dev wifi
の出力の両方が、正常に接続されたことを示しています。
しばらくして、nmcli dev
とnmcli g
はまだすべてが正常であると言いますが、nmcli dev wifi
は現在接続されているはずの接続のみを検出します(他のAPが利用可能であっても)。
何もしなければ、状況は上記のままです。ここで接続をリセットしようとすると、タイトルごとにエラーが発生します。そのために、Sudo service network-manager restart
を使用します。この時点でさまざまなツールによって報告される状態はここにあります:
ip link
は、... wlp6s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> ...
(UP部分に注意してください)の形式の行を使用して、インターフェイスをupと報告します。iw
はインターフェイスがダウンしていると報告します。iw dev wlp6s0 link
の出力はNot connected.
ですnmcli
は、インターフェースがダウンしていると報告します。特に、nmcli dev
は状態をdisconnected
として報告し、nmcli g
についても同じです。興味深いことに、nmcli g
はまだWIFIをenabled
として報告します。これは、すべてをenabled
として報告するnmcli radio
の出力によって確認されます。disconnected
と表示され、再接続するための表示オプションはありません。この時点で私はちょっとアイデアが足りないので、ip
を介して接続をリセットしようとしますが、それでもまだダウンとして登録されません。 Sudo ip link set wlp6s0 down
を使用してから、Sudo ip link set wlp6s0 up
を使用します。 ip link
の出力で確認されるように、最初のコマンドは成功します。ただし、2番目のコマンドは失敗します。
RTNETLINK回答:入出力エラー
追加の興味深い情報は、dmesg
で提供されます。エラーが発生すると、iwlwifi
によって多くのエラーが発生します。 dmesg
ダンプ全体をアップロードしました この要点 。このエラーは、 L1049 の前後で何が起こっているかを追跡する可能性が最も高いです。接続が停止した後、ネットワークマネージャーを強制的にリセットするまで、 L11 で始まるiwlwifiエラーのループを取得します。これは、dmesg
。
その後、ip link set wlp6s0 up
を実行して、最愛のエラーを取得しようとすると、dmesg
に次の行が出力されます。
[ +9.727062] iwlwifi 0000:06:00.0: Failed to wake NIC for hcmd
[ +0.000047] iwlwifi 0000:06:00.0: Error sending MAC_CONTEXT_CMD: enqueue_hcmd failed: -5
[ +0.000006] iwlwifi 0000:06:00.0: Failed to remove MAC context: -5
[ +13.220958] iwlwifi 0000:06:00.0: Could not load the [0] uCode section
[ +0.000007] iwlwifi 0000:06:00.0: Failed to start INIT ucode: -5
[ +0.000002] iwlwifi 0000:06:00.0: Failed to run INIT ucode: -5
[ +0.000001] iwlwifi 0000:06:00.0: Failed to start RT ucode: -5
[Feb27 12:59] iwlwifi 0000:06:00.0: Could not load the [0] uCode section
[ +0.000007] iwlwifi 0000:06:00.0: Failed to start INIT ucode: -5
[ +0.000002] iwlwifi 0000:06:00.0: Failed to run INIT ucode: -5
[ +0.000002] iwlwifi 0000:06:00.0: Failed to start RT ucode: -5
さらにグーグルでarchlinuxフォーラムのこれら2つの投稿に移動しました( Wireless APは切断時にブロードキャストを停止します および RTNETLINKの回答:入出力エラー、rt3290 )。これは、ネットワークアダプタードライバーの問題をさらに示唆しています。彼らは特にインテルのワイヤレスドライバーをリロードすることに言及しています
Sudo modprobe -r iwlwifi
Sudo modprobe iwlwifi
ip link
の出力がwlp6s0
インターフェイスを表示しなくなったことで確認されるように、最初のコマンドは成功します。残念ながら、いったんドライバーが停止すると、再び上昇することはありません(Sudo modprobe | grep iwl
に再び表示されるという意味で再び上昇しますが、ip link
でインターフェイスが再び表示されるわけではありません)。 2番目のコマンドは端末出力なしで失敗し、次のdmesg
ログが記録されます。
[Feb27 16:45] Intel(R) Wireless WiFi driver for Linux
[ +0.000002] Copyright(c) 2003- 2015 Intel Corporation
[ +0.000830] iwlwifi 0000:06:00.0: loaded firmware version 17.608620.0 op_mode iwlmvm
[ +0.016423] iwlwifi 0000:06:00.0: Detected Intel(R) Dual Band Wireless AC 7260, REV=0xFFFFFFFF
[ +0.024695] Timeout waiting for hardware access (CSR_GP_CNTRL 0xffffffff)
[ +0.000012] ------------[ cut here ]------------
[ +0.000009] WARNING: CPU: 6 PID: 4523 at /build/linux-hwe-4GXcua/linux-hwe-4.13.0/drivers/net/wireless/intel/iwlwifi/pcie/trans.c:1873 iwl_trans_pcie_grab_nic_access+0xe7/0xf0 [iwlwifi]
[ +0.000001] Modules linked in: iwlmvm(+) mac80211 iwlwifi cfg80211 ccm rfcomm bnep snd_hda_codec_hdmi arc4 uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core videodev media joydev pn544_mei mei_phy pn544 hci nfc intel_rapl x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel hid_multitouch kvm irqbypass crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcbc snd_hda_codec_realtek snd_hda_codec_generic btusb btrtl Dell_laptop snd_hda_intel btbcm aesni_intel snd_hda_codec Dell_smm_hwmon aes_x86_64 btintel bluetooth snd_hda_core snd_hwdep crypto_simd ecdh_generic glue_helper cryptd intel_cstate snd_pcm intel_rapl_perf Dell_wmi Dell_smbios input_leds dcdbas snd_seq_midi serio_raw wmi_bmof sparse_keymap snd_seq_midi_event snd_rawmidi intel_pch_thermal snd_seq rtsx_pci_ms memstick
[ +0.000033] snd_seq_device snd_timer snd acpi_als kfifo_buf mei_me lpc_ich mei shpchp soundcore ie31200_edac industrialio dptf_power int3403_thermal int3406_thermal int3402_thermal Dell_smo8800 Dell_rbtn processor_thermal_device int3400_thermal int340x_thermal_zone mac_hid acpi_thermal_rel intel_soc_dts_iosf parport_pc ppdev lp parport autofs4 hid_logitech_hidpp hid_logitech_dj usbhid hid i915 nouveau rtsx_pci_sdmmc mxm_wmi ttm i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt psmouse fb_sys_fops ahci libahci drm rtsx_pci wmi video [last unloaded: cfg80211]
[ +0.000026] CPU: 6 PID: 4523 Comm: modprobe Tainted: G W 4.13.0-36-generic #40~16.04.1-Ubuntu
[ +0.000000] Hardware name: Dell Inc. Dell Precision M3800/Dell Precision M3800, BIOS A10 08/17/2015
[ +0.000001] task: ffff9037d6261740 task.stack: ffffb44d43ef0000
[ +0.000006] RIP: 0010:iwl_trans_pcie_grab_nic_access+0xe7/0xf0 [iwlwifi]
[ +0.000001] RSP: 0018:ffffb44d43ef3ae0 EFLAGS: 00010082
[ +0.000001] RAX: 000000000000003d RBX: ffff9037d77e0018 RCX: 0000000000000000
[ +0.000001] RDX: 0000000000000000 RSI: ffff9037efb96578 RDI: ffff9037efb96578
[ +0.000001] RBP: ffffb44d43ef3b00 R08: 0000000000000001 R09: 00000000000005a4
[ +0.000000] R10: 0000000000000000 R11: 00000000000005a4 R12: 0000000000000000
[ +0.000001] R13: ffff9037d77e8f20 R14: ffffb44d43ef3b10 R15: ffff9037d77e0230
[ +0.000001] FS: 00007f82e7a0a700(0000) GS:ffff9037efb80000(0000) knlGS:0000000000000000
[ +0.000001] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ +0.000001] CR2: 00007ffc8c365b08 CR3: 000000038bc2e004 CR4: 00000000001606e0
[ +0.000001] Call Trace:
[ +0.000006] iwl_read_prph+0x38/0x90 [iwlwifi]
[ +0.000004] iwl_pcie_apm_init+0x1c0/0x230 [iwlwifi]
[ +0.000005] iwl_trans_pcie_start_hw+0x76/0x1f0 [iwlwifi]
[ +0.000009] iwl_op_mode_mvm_start+0x6e4/0xb10 [iwlmvm]
[ +0.000005] _iwl_op_mode_start.isra.10+0x4c/0xa0 [iwlwifi]
[ +0.000004] iwl_opmode_register+0x6c/0xd0 [iwlwifi]
[ +0.000002] ? 0xffffffffc0742000
[ +0.000007] iwl_mvm_init+0x35/0x1000 [iwlmvm]
[ +0.000003] do_one_initcall+0x55/0x1b0
[ +0.000003] ? __vunmap+0x81/0xb0
[ +0.000002] ? kmem_cache_alloc_trace+0x154/0x1b0
[ +0.000001] ? kfree+0x165/0x170
[ +0.000003] do_init_module+0x5f/0x209
[ +0.000002] load_module+0x196a/0x1d70
[ +0.000002] ? ima_post_read_file+0x7d/0xa0
[ +0.000003] SYSC_finit_module+0xe5/0x120
[ +0.000001] ? SYSC_finit_module+0xe5/0x120
[ +0.000002] SyS_finit_module+0xe/0x10
[ +0.000003] entry_SYSCALL_64_fastpath+0x24/0xab
[ +0.000001] RIP: 0033:0x7f82e75384d9
[ +0.000001] RSP: 002b:00007ffc8c368c08 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[ +0.000001] RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 00007f82e75384d9
[ +0.000001] RDX: 0000000000000000 RSI: 000055cbf8d6626b RDI: 0000000000000001
[ +0.000000] RBP: 00007ffc8c367c10 R08: 0000000000000000 R09: 0000000000000000
[ +0.000001] R10: 0000000000000001 R11: 0000000000000246 R12: 000055cbf914aad0
[ +0.000001] R13: 00007ffc8c367bf0 R14: 0000000000000005 R15: 0000000000040000
[ +0.000001] Code: 00 00 e8 9d b9 25 dd 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 ce 8c c0 89 c6 e8 5a 47 a3 dc <0f> ff eb c1 0f 1f 44 00 00 0f 1f 44 00 00 55 49 c7 c0 08 cf 8c
[ +0.000024] ---[ end trace a5e22ad3df2362ea ]---
[ +1.001198] iwlwifi 0000:06:00.0: Could not load the [0] uCode section
[ +0.000007] iwlwifi 0000:06:00.0: Failed to start INIT ucode: -5
[ +1.965039] iwlwifi 0000:06:00.0: Failed to run INIT ucode: -5
私はこれのすべての考えられる原因がドライバーのバグだと推測しています。それでも、なぜそれが一部のネットワークでのみ発生し、他のネットワークでは発生しないのかはわかりません。
また、ラップトップを再起動するとは少なくとも一時的に問題を解決しますが、再起動中に何が起こっているかをシミュレートする方法はありません、ドライバー単位で、それを行うことができるようになしでそれ自体を再起動します?
lspci -k | grep -A3 Network
で指定されたネットワークアダプターモデルの詳細:
06:00.0 Network controller: Intel Corporation Wireless 7260 (rev 6b)
Subsystem: Intel Corporation Dual Band Wireless-AC 7260
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
デバイスは、ubuntu 16.04 64ビットを実行するDell Precision M3800ラップトップです。
私が知っている他のデバイスでは、この接続で同じ問題が発生することはありません。また、同じデバイスがほとんどで、他のWi-Fiネットワークではこの問題は表示されません。時々起こりますが、まれであり、通常は接続をリセットすることで簡単に解決できます。 これは、この特定のデバイスとこの特定のネットワークとの組み合わせに問題があることを示唆しているようです、それがとても厄介なものです。
私はこの同じデバイスにウィンドウ10を使用していました。同じ問題が発生しました。 Wifiが動作していないときに再起動しようとすると、ラップトップが再起動中にハングしてBSODになることが多いため、間違いなく最悪でした。別のネットワークアダプタードライバーをインストールしようとした後、これはやや一般的ではありませんでしたが、インターフェイスを再度起動するには、コントロールパネルを介してネットワークアダプターを複数回無効にしてから再度有効にするという奇妙な手順を実行する必要があります。
systemd-networkd( archlinux forums )経由でwifiを設定できません。 OPがsystemd-networkd
を使用しているため、私の場合には完全には関係ありません。 ip link set wlp2s0f0 up
を介してインターフェイスを起動しようとすると、メッセージが表示されます。 OPは、障害のあるwpa_supplicant
構成ファイルを修正する問題を解決したと主張していますが、このファイルに当てはまる場合はそうしません。
[解決済み]ワイヤレス接続の問題(- archlinux forums )。 ip link set wlp2s0 up
でインターフェイスを起動しようとすると、エラーメッセージが再び表示されます。原因は、両方が実行されていたNetworkManager
とdhcpcd
の競合であると思われました。 OPは、dhcpcd
を介してsystemctl
を無効にする問題を解決したと主張しています。おそらくここには当てはまりません。
Wifiが動作しないRTNETLINKの回答:入出力エラー( archlinux forums )。おそらく上記と同じ問題ですが、OPは投稿を放棄しました。
[解決済み] RTNETLINKの回答:入出力エラー( archlinuxフォーラム )。 ip link set wlo1 up
でエラーが発生しました。解決策がありません。
wifiはさまざまなエラーメッセージで動作しません[終了](- askubunt )。 ip link set wlo1up
でエラーが発生しました。投稿は不明瞭を閉じました。
無線は理由なく切断され、動作を停止します(- buntuforums )。推奨される解決策は、Sudo sed -i 's/wifi.powersave = 3/wifi.powersave = 2/' /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
を使用してNetwork Managerがワイヤレス電源管理を有効にできないようにすることでした。 OPがポストに戻って彼のために働いたかどうかを言うことはありませんでしたが、これは私にとってはうまくいきませんでした。
特に Arch Linuxフォーラム および askubunt には、他にもいくつかの投稿があります。
同じ種類の問題に関連するこの一連のバグレポートを見つけました: bug.launchpad 、 bugzilla.kernel.org 1 、 bugzilla.kernel.org 2 、 bugzilla.kernel.org 。
上記の最初のリンクでEmmanuel Grumbach(egrumbach)を引用:
これは電気的な問題です。私はそれについて何もできません
そのため、物理カードのバグ/障害に起因する問題のようです。