web-dev-qa-db-ja.com

インターフェイスを起動しようとすると、「RTNETLINKの回答:入力/出力エラー」が表示される

この問題はここ数年で多くの人に起こったようで、いくつかのフォーラムや周りの質問で議論されています。しかし、そのような議論のほとんどは明確な解決策なしに死んでしまうか、明確に述べられていなかったため、ここでもう一度試してみました。

問題

接続が静かに停止する

私はラップトップ(Dell Precision M3800)を使用してパブリックWiFiネットワーク(正確には大学のネットワーク)に接続しようとしています。接続は最初は成功していましたが、しばらくすると(どれくらいかわかりませんでした。数分、数時間になることもあります)、動作しなくなります。

ここで作業を停止することで、明らかに接続が確立されている間、実際にいくつかのWebサイトにアクセスしたり、アドレスにpingを実行したりしても、最初は何も起こりません特に、この時点では、接続はすべて接続されたままです。 Network Managerアイコン、およびnmcli devnmcli g、およびnmcli dev wifiの出力の両方が、正常に接続されたことを示しています。

しばらくして、nmcli devnmcli gはまだすべてが正常であると言いますが、nmcli dev wifiは現在接続されているはずの接続のみを検出します(他のAPが利用可能であっても)。

接続をリセットしようとしています

何もしなければ、状況は上記のままです。ここで接続をリセットしようとすると、タイトルごとにエラーが発生します。そのために、Sudo service network-manager restartを使用します。この時点でさまざまなツールによって報告される状態はここにあります:

  1. ip linkは、... wlp6s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> ...UP部分に注意してください)の形式の行を使用して、インターフェイスをupと報告します。
  2. 一方、iwはインターフェイスがダウンしていると報告します。iw dev wlp6s0 linkの出力はNot connected.です
  3. nmcliは、インターフェースがダウンしていると報告します。特に、nmcli devは状態をdisconnectedとして報告し、nmcli gについても同じです。興味深いことに、nmcli gはまだWIFIをenabledとして報告します。これは、すべてをenabledとして報告するnmcli radioの出力によって確認されます。
  4. Network Managerアイコンには、disconnectedと表示され、再接続するための表示オプションはありません。

インターフェイスを再度起動して、RTNETLINKエラーを取得してください

この時点で私はちょっとアイデアが足りないので、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ラップトップです。

追加の関連情報

  1. 私が知っている他のデバイスでは、この接続で同じ問題が発生することはありません。また、同じデバイスがほとんどで、他のWi-Fiネットワークではこの問題は表示されません。時々起こりますが、まれであり、通常は接続をリセットすることで簡単に解決できます。 これは、この特定のデバイスとこの特定のネットワークとの組み合わせに問題があることを示唆しているようです、それがとても厄介なものです。

  2. 私はこの同じデバイスにウィンドウ10を使用していました。同じ問題が発生しました。 Wifiが動作していないときに再起動しようとすると、ラップトップが再起動中にハングしてBSODになることが多いため、間違いなく最悪でした。別のネットワークアダプタードライバーをインストールしようとした後、これはやや一般的ではありませんでしたが、インターフェイスを再度起動するには、コントロールパネルを介してネットワークアダプターを複数回無効にしてから再度有効にするという奇妙な手順を実行する必要があります。

この問題が提起された他の投稿

  • systemd-networkdarchlinux forums )経由でwifiを設定できません。 OPがsystemd-networkdを使用しているため、私の場合には完全には関係ありません。 ip link set wlp2s0f0 upを介してインターフェイスを起動しようとすると、メッセージが表示されます。 OPは、障害のあるwpa_supplicant構成ファイルを修正する問題を解決したと主張していますが、このファイルに当てはまる場合はそうしません。

  • [解決済み]ワイヤレス接続の問題(- archlinux forums )。 ip link set wlp2s0 upでインターフェイスを起動しようとすると、エラーメッセージが再び表示されます。原因は、両方が実行されていたNetworkManagerdhcpcdの競合であると思われました。 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 には、他にもいくつかの投稿があります。

2
glS

同じ種類の問題に関連するこの一連のバグレポートを見つけました: bug.launchpadbugzilla.kernel.org 1bugzilla.kernel.org 2bugzilla.kernel.org

上記の最初のリンクでEmmanuel Grumbach(egrumbach)を引用:

これは電気的な問題です。私はそれについて何もできません

そのため、物理カードのバグ/障害に起因する問題のようです。

2
glS