タイムアウト パラメーターを指定して関数を実行すると、ハードコードされた 10000 値が 10 秒のタイムアウトを与え、10*HZ
値が 2.5 秒のタイムアウトを与えることがわかりました。
usb_bulk_msg(context->udev, pipe, context->buffer, context_size, &bytes_read, 10000 ); // 10秒 // 10*HZ); // 2.5 秒
printk で表示される HZ 値は 250 です - この値は正しくありません。Linux のソース: http://lxr.free-electrons.com/source/include/asm-generic/param.h#L6を見ると、次のようHZ
に定義されていることがわかりCONFIG_HZ
ます - 構成パラメーターのように見えます。この値が正しくないのはなぜですか? jiffies タイムアウトを指定する別の方法はありますか?
Ubuntu 12.04、32 ビット、カーネル バージョン 3.2.34。