web-dev-qa-db-ja.com

NVMe:SUBNQNフィールドがないか無効です

新しいシステムでNVMeディスクを認識させる方法がわかりません。

どのディストリビューションを使用しても、dmesgの出力は同じです(Live CD)。

xubuntu@xubuntu:~$ dmesg | grep -i nvme
[    5.007954] nvme nvme0: pci function 0000:08:00.0
[    5.008077] nvme nvme1: pci function 0000:09:00.0
[    5.224407] nvme nvme0: missing or invalid SUBNQN field.
[    5.224413] nvme nvme1: missing or invalid SUBNQN field.
[    5.496248] nvme1n1: detected capacity change from 240057409536 to 0
[    5.612128] nvme nvme1: failed to set APST feature (-19)
[    5.660221] nvme0n1: detected capacity change from 240057409536 to 0
[    5.896172] nvme nvme0: failed to set APST feature (-19)
[   13.921911] Modules linked in: snd_hda_codec_hdmi cmac bnep arc4 snd_hda_codec_realtek iwlmvm edac_mce_AMD snd_hda_codec_generic kvm snd_hda_intel mac80211 snd_hda_codec snd_hda_core irqbypass snd_hwdep snd_pcm crct10dif_pclmul btusb crc32_pclmul ghash_clmulni_intel btrtl btbcm pcbc btintel snd_seq_midi bluetooth snd_seq_midi_event iwlwifi snd_rawmidi aesni_intel aes_x86_64 snd_seq crypto_simd joydev input_leds glue_helper cryptd cfg80211 ecdh_generic snd_seq_device snd_timer snd soundcore ccp wmi_bmof k10temp shpchp mac_hid sch_fq_codel parport_pc ppdev lp parport ip_tables x_tables autofs4 overlay nls_utf8 isofs dm_mirror dm_region_hash dm_log uas usb_storage hid_generic usbhid hid nouveau mxm_wmi video ttm drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops igb drm dca i2c_piix4 nvme
[   13.921933]  i2c_algo_bit ahci ptp nvme_core pps_core libahci gpio_amdpt wmi gpio_generic

invalid SUBNQN fieldの唯一の原因は、元のCソースコードのリテラルエラーです。

ドライブはXPG SX8200 PCIe NVMe Gen3x4、マザーボードはAsrock x399 Taichi + 1900X TR

4
blakev

最近、SX8200を既存のシステム(SATA SSDにインストールされている)に追加したところ、新しいドライブが正しく認識されませんでした。私はX399 Taichiで非常によく似た設定をしていて、dmesgで同じエラーを見ました。私はカーネル4.15.0-36-genericを備えたUbuntu 18.04.1を使用しています。

適切な修正があるかどうかはわかりませんが、一部のSamsungドライブで使用されているのと同じ回避策でいくつかのエラーを回避することができました。カーネルブートコマンドラインに次のパラメーターを追加してみてください。

nvme_core.default_ps_max_latency_us=0

私が理解しているように、これはAPSTを無効にします。これは省電力機能です。私はもっ​​と大きな値で実験をしませんでした、おそらくあなたはエラーを回避し、それでもある程度の効率を得ることができますが、私はまだそれを試していません。

この回避策を実行しても他のエラーが発生しますが、APSTのエラーはなくなり、ドライブは機能しているようです。マウントしてファイルを読み取ることができました(以前にWindowsでNTFSにフォーマットしました)。

4
YRH

これは、カーネル/ NVMeファームウェアの同様のバグによる可能性があります。 https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1803692

まずSSD/NVMeのファームウェアを更新してください。 Intelドライブでこの問題が発生している人のための簡単な手引き:

Intel SSD Data Center Tool(DCT)によるファームウェアの更新 https://downloadcenter.intel.com/search?keyword=SSD+Firmware+Update+Tool

# Download and install DCT
wget https://downloadmirror.intel.com/28999/eng/Intel_SSD_Data_Center_Tool_3.0.20_Linux.Zip -O /tmp/Intel_SSD_Data_Center_Tool_3.0.20_Linux.Zip
unzip -d /tmp /tmp/Intel_SSD_Data_Center_Tool_3.0.20_Linux.Zip
Sudo dpkg -i /tmp/isdct_3.0.20-1_AMD64.deb

# show drive data
isdct show -intelssd

# update 1st drive
isdct load -intelssd 0

reboot

# update second drive
isdct load -intelssd 1
0
panticz.de