oshiro
2022年10月19日 20時22分
お世話になっております。
4TBの外付けSSD(※)を用意し、後述のようにしたところ、
「Armadillo起動後、(電源コネクタとLANポートの間の)USBポートに接続し初回マウントし、初回アクセスした瞬間、そこから数分間応答がなくなりUSBにアクセス出来ない」現象が出ているのですが、何か分かりますでしょうか。
応答が復活した以後は、USBを抜いても挿してもマウントしてもアンマウントしても、特に引っかかりなく動きます。再起動すると再発します。
USBは、起動後に挿しても、挿したまま起動しても起こります。
Linux 4.9 at25のカーネルをビルドして開発キットに入れて使っており、自作のソフト等は問題なく動いています。自作のソフトは止めていても現象が起こります。
※ USB接続C-C接続だったのでA-Cケーブルを買って接続。購入時にexFATかNTFS(失念)でフォーマットされている、SXS2000/4000G
どうやら、本現象は、ext4では起きて、ext3では起きないようです。(耐断片化等から、出来ればext4を使いたい所ですが。)
fdisk -l
→ /dev/sda を確認。
Linux用にext4パーティションを用意
fdisk /dev/sda p →Windowsで見ると1パーティションしかないのに、ここでは何故か、sda1, sda2 がある d →dは2回選択し、パーティションを全て選択 w →パーティション削除を反映 (→別の手順でフォーマットして、GPTパーティションテーブルではなくなっていれば、2TBを超えているからDOSパーティションはダメだと警告が出るので、 fdisk /dev/sda → g → w でGPTにしておく。) fdisk /dev/sda n →そのままEnterを数回おし、Partition1 先頭セクタから末尾まで選択 w mkfs -t ext4 /dev/sda1
マウントしてアクセス
mkdir /mnt/usb mount /dev/sda1 /mnt/usb cp hoge.txt /mnt/usb
→ここで3分程度固まります。(cp~ ではなく umunt /mnt/usb でも同じ。)
この前後の /var/log/message は
tail -f /var/log/message Nov 4 02:17:31 armadillo kernel: EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null) Nov 4 02:18:03 armadillo kernel: usb 1-1: reset high-speed USB device number 2 using ci_hdrc Nov 4 02:18:34 armadillo kernel: usb 1-1: reset high-speed USB device number 2 using ci_hdrc Nov 4 02:19:06 armadillo kernel: usb 1-1: reset high-speed USB device number 2 using ci_hdrc Nov 4 02:19:36 armadillo kernel: usb 1-1: reset high-speed USB device number 2 using ci_hdrc Nov 4 02:20:08 armadillo kernel: usb 1-1: reset high-speed USB device number 2 using ci_hdrc Nov 4 02:20:38 armadillo kernel: usb 1-1: reset high-speed USB device number 2 using ci_hdrc Nov 4 02:20:39 armadillo kernel: sd 0:0:0:0: [sda] tag#0 FAILED Result: hostbyte=DID_ABORT driverbyte=DRIVER_OK Nov 4 02:20:39 armadillo kernel: sd 0:0:0:0: [sda] tag#0 CDB: Write same(16) 93 08 00 00 00 00 00 00 57 f0 00 00 10 00 00 00
02:17:31 マウント完了
数秒後 cpコマンド実行、応答無くなる。
02:20:39 cpコマンド無事終了。以後、他の操作も問題なく出来るようになる
という挙動です。
固まっている間にUSBを引き抜くと messages には disconnect 云々がすぐ現れ、応答が復活します。
ジャーナル破損のような表示も時折出るので、念のため mount 前に fsck /dev/sda1 を行っても、本現象は発生します。
usb-devices を打った結果は以下のようになります。
root@armadillo:/home/atmark# usb-devices T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0002 Rev=04.09 S: Manufacturer=Linux 4.9.133-at25 ehci_hcd S: Product=EHCI Host Controller S: SerialNumber=ci_hdrc.0 C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 0 D: Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0951 ProdID=176b Rev=01.00 S: Manufacturer=Kingston S: Product=XS2000 S: SerialNumber=50026B7282BF6996 C: #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0002 Rev=04.09 S: Manufacturer=Linux 4.9.133-at25 ehci_hcd S: Product=EHCI Host Controller S: SerialNumber=ci_hdrc.1 C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 3 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=02 MxPS=64 #Cfgs= 1 P: Vendor=0424 ProdID=3503 Rev=a1.a0 C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=2mA I: If#= 0 Alt= 1 #EPs= 1 Cls=09(hub ) Sub=00 Prot=02 Driver=hub T: Bus=02 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#= 5 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=2c7c ProdID=0125 Rev=03.18 S: Manufacturer=Android S: Product=Android C: #Ifs= 5 Cfg#= 1 Atr=a0 MxPwr=500mA I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option I: If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#= 4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) T: Bus=02 Lev=02 Prnt=02 Port=02 Cnt=02 Dev#= 4 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=0cf3 ProdID=3004 Rev=00.02 C: #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA I: If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb I: If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
よろしくお願いいたします。
コメント
at_takumi.mizutani
at_takumi.mizutani
水谷です。
G3を同じカーネルのバージョンに合わせ、社内の500GBのSSDにて再現試験を行ったのですが同様の現象は見られませんでした。
使用したSSDの情報は以下のとおりです。
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 0 D: Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=21c4 ProdID=06cf Rev=82.08 S: Manufacturer=Lexar S: Product=Portable SSD SL100 Pro S: SerialNumber=271911500232255 C: #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA I: If#=0x0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
もし可能でしたら、以下のことを試していただけますでしょうか。
・別のSSDを使用しても同様の現象が発生するか
・別のUSBケーブルを使用しても同様の現象が発生するか
以上、よろしくお願いいたします。
oshiro
水谷さま
ご連絡ありがとうございます。
取り急ぎ、片方返信いたします。
>・別のSSDを使用しても同様の現象が発生するか
どうやら2TB以上かつext4の場合に発生するようです。
・2TB以下(DOSパーティションテーブル)で、ext4 → 問題無し
・4TB(GPTパーティションテーブル)で、ext4 → 問題無し
でした。
可能性としては、電力供給の問題の可能性も?
本SSDはもともと USB C to C の太めの短いケーブルが付属するのみです。
こちらで、USB A to C の中くらいの太さのケーブルを用意して繋いでいます。
(Type-Cの方が、要求出来る電力は多めなのでそれ前提で設計されていれば、Type-AのUSB2.0から使った場合心許ない?)
ただ、同SSDで、2TBでフォーマットしたとき、ext3でフォーマットした時は不具合が出ないので、違うかもしれません。
oshiro
oshiro
oshiro
続報です。
USB SSDが保証で代替の新品で返って来ましたので、同様の事を試してみました。
やはり、同じような現象となりました。
(ただ、以前はマウントすると100%起きていたのが、今回は再起動すると100%なるけど、起動したまま2回目以降はほとんど起きないなど、発生頻度・再現性が下がってるような気もします。)
なお、今回は前回とは異なるArmadillo G3個体です。
SSDのKingston公式サイトでファームウェアを見てみると、500G、1TB、2TBモデルは2回リリースノートがある。
一方で、本4TBモデルは記載されておらず、ファームウェアアップデートは一度もされていないようです。
(バージョン表記も一部異なる。以下URLの一番下の「USB」の所)
https://www.kingston.com/jp/support/technical/ksm-firmware-update
4TBだけファームウェアが異なり、その影響なのかもしれません・・・?
今回の試したケーブルは、2種類です。
・Rampowの布系の20cmくらいの青みのある USB3系のA-Cケーブル
・Ankerのモバイルバッテリーに付いて来た60cmくらいの黒いビニール系のA-Cケーブル
特に現象に差異は感じられませんでした。
また、ちょっと浅めに挿したり、しっかり奥まで挿してみても関係無く、再起動して1回目のマウントで起きるようでした。
(問題無くアクセス出来たのを確認 → reboot → マウント → アクセス でも発生。この間USBコネクタ・ケーブルには触れていない。)
また、最近WindowsのPowershellとWSL2を駆使すると、WindowsのWSL(Ubuntu)にマウントする事が出来るようになったのでやってみたのですが、
そちらでマウントした時は、不具合が発生しませんでした。
結局、詳細原因は不明ですが、
SXS2000/4000Gのみ起きるのか、本SSDがArmadillo G3のハードウェアとの相性が悪いのか、その辺りなような気がします。
oshiro
2022年10月24日 11時57分
すみません、続報です。
一度だけと記載しましたが、その後連続稼働させると、約35分周期で同様の現象が発生していました。