Myson: USB/IDE Bridge (04cf:8818
)
IDE HDD を USB2.0 につなげるケースで
0x04cf Myson Century, Inc. 0x8818 USB2.0 to ATAPI Bridge Controller
という10年以上前に購った古いものを使って Ext3 ファイルシステムをマウントすると、
end_request: critical target error, dev sdb, sector 30781645 Buffer I/O error on device sdb2, logical block 918018 lost page write due to I/O error on sdb2 Aborting journal on device sdb2. EXT3-fs (sdb2): error: ext3_put_super: Couldn't clean up the journal EXT3-fs (sdb2): error: remounting filesystem read-only end_request: critical target error, dev sdb, sector 0 JBD: recovery failed EXT3-fs (sdb2): error loading journal
などといってジャーナルが壊れてしまうように見える。 これはカーネル 3.14.16 を使うようになってから発生する現象で、 3.8 のときは問題なくマウントできていた。 また VFAT ファイルシステムならば 3.14.16 以降でもこのような不具合は無い。
別のメイカーの別の型のケースをつかうとこの問題は発生しないので、 HDD の寿命とかの不具合ではないことはわかったが、 それならとうとうこのブリッジコントローラが成仏したかと思うと、 そうでもなく、やはり SCSI コマンドチェックの厳格化がきっかけなのである。
これは usb-storage
モジュールの quirks
パラメータを適切に設定すれば解決する問題で、
古い USB2.0/ATAPI ブリッジはライトプロテクトのチェックを省略しなければならないのであった。
つまり
modprobe usb-storage quirks=0x04cf:0x8818:w
とやってモジュールをロードするか、あるいは
modprobe.conf
などに
options usb-storage quirks=0x04cf:0x8818:w
と書いておくのである。 そうすれば Ext3 ファイルシステムをマウントしようとする際に上のエラーは発生せず、従前どおり使用できる。