vine-users ML アーカイブ



[vine-users:068412] Re: マルチ カードリーダFA902F のマウント

  • From: shuu-vine@xxxxxxxxxxxx
  • Subject: [vine-users:068412] Re: マルチ カードリーダFA902F のマウント
  • Date: Wed, 3 Nov 2004 09:29:43 +0900
山口です。
# 途中からなのでハズしてるかも

On Mon, Nov 01, 2004 at 07:25:29PM +0900, Harada kazutaka wrote:
> ハラダです。
> 
> ちょっと気になったので、ELECOMのUSB 2.0 マルチカードリーダ
> MR-DU2A7SV と言うのを購入して試してみました。
> (7-in-1なカードリーダーで、スロットは2つ付いています。)
> 
> 環境は
>  kernel-2.4.26-0vl15 (Vine Originalのまま)
>  murasaki-0.7.10-0vl2
>  murasaki-usb-mount-0.2-0vl1
> です。

> *一応*使えると書いたのは、デバイスが認識されるまでに非常に
> 時間が掛かってしまうため、実用的ではないと思われたからからです。
> 
> 私の環境では 2デバイス(sdaとsdb)が認識されて、デスクトップに
> アイコンが表示されるまで、約10分掛かりました。
> 
> 例しに murasaki を停止した状態でカードリーダを接続して
> dmesgや/var/log/messages を見てみたところ、
> moduleロード後の最初のアクセス時に、スロットのスキャンに
> 時間が掛かっているようです。
> (一旦スキャンが終れば、それ以降は普通にアクセスできました)

sdがロードされ初期化する際にメディアがないため、sdドライバが
諦めるまで待たされるのが原因じゃないでしょうか?

そうならば、スロットにメディアを入れておくことで回避可能ですが、
スロット全部にメディアを入れてブートというのは、ちょっと困りものです。

RCファイル(/etc/rc.d/init.d/murasaki)の中にinitialize()と
いうのがありますが、それを変更してみたらどうでしょうか?
これでRCで待たされることは、なくなります。

その代わり、murasakiのRC実行後に
murasaki_init.(pci|usb|ieee1394)による初期化が
期待しているRCスクリプトがあると、Failedになってしまいます。
# murasaki_init.usb だけ取りだして'&'を付けるのも良いです。

------------------------- 変更前 ---------------------------------
initialize(){
        for dev in pci usb ieee1394
        do
                if [ -x  ${INIT_DIR}/murasaki_init.${dev} ];then
                        ${INIT_DIR}/murasaki_init.${dev}
                fi
        done
}
-----------------------------------------------------------------

&を付ける
------------------------- 変更後 ---------------------------------
initialize(){
        for dev in pci usb ieee1394
        do
                if [ -x  ${INIT_DIR}/murasaki_init.${dev} ];then
                        ${INIT_DIR}/murasaki_init.${dev} &
                fi
        done
}
-----------------------------------------------------------------

一度、試してみて下さい。

----
しう