鈴木 建です。再度の質問お許し下さい。 From: "Hidetoshi Shimokawa" <[EMAIL PROTECTED]> Subject: [FreeBSD-users-jp 90697] Re: LaCie Biggest F800 (RAID) Date: Thu, 17 May 2007 17:30:44 +0900 > > 最初の方のpass0のところを見ると、外付けRAID HDDをda0として認識しているように思えます。 > > そして、umass0の``BBB reset failed''を機に、おかしくなるように見えます。 > > > > これってひょっとして、純粋にusbの問題ってことでしょうか? > > それならFireWire800を使うことで解決しそうで楽なのですが。 > > そうとも限りません、 device が support していない command を CAMが要求して > device がおかしくなってしまい、 USB stack が reset を試みている可能性もあります。 > この場合は一概に USB stack が悪いとは言えません。 > (それで挙動がおかしくなる device が悪いと思います)
なるほど。ありがとうございます。 > そのような device のために quirk があるのですが、 > 上記の message 中の Serial Number がおかしな気もするので、 > CAM_QUIRK_NOSERIAL 問題なのかもしれません。 /usr/src/sys/cam/cam_xpt.c の中身をいじってみました。 static struct xpt_quirk_entry xpt_quirk_table[] = の項目の中に { /* * LaCie Biggest F800 */ { T_DIRECT, SIP_MEDIA_FIXED, "LaCie Biggest", "F800", "*" }, CAM_QUIRK_NOSERIAL, /*mintags*/2, /*maxtags*/255 }, を加え、カーネルを再構築し、起動しましたが認識できていない状況です。 (mintags=maxtags=0や、T_DIRECTのかわりにT_ANYなども試しましたが、同じ状況でした。) ただ、少し気になるのは、dmesgの結果が umass0: BBB reset failed, TIMEOUT umass0: BBB bulk-in clear stall failed, TIMEOUT umass0: BBB bulk-out clear stall failed, TIMEOUT pass0 at umass-sim0 bus 0 target 0 lun 0 pass0: <LaCie Biggest F800 1.40> Fixed Direct Access SCSI-4 device pass0: Serial Number 00000000000000 pass0: 40.000MB/s transfers GEOM: new disk da0 ATA PseudoRAID loaded とserial numberが出てきています。 (CAM_QUIRK_NOSERIAL でserial numberを問い合わせないようにしているはずなのに) ということで原因は 1. cam_xpt.c の書き方が悪い。 2. CAM_QUIRK_NOSERIAL 以外に問題あり。 と切り分けられず、分からなくなってしまいました。 アドバイス頂ければ幸いです。 鈴木 建