デバイスがいつ準備されたかを確認する方法

デバイスがいつ準備されたかを確認する方法

私はFirewireミキシングコンソールを持っており、コンソールが開いたときに完全なオーディオチェーン(alsa -> pulseaudio -> jackd -> firewire)を設定するスクリプトを呼び出すudevルールを作成しました。

jackd今始めましたが、数秒後に消えることがわかりました。出力をキャプチャしましたが、エラーメッセージが含まれています。テストするためにudevイベントを偽造し、udevadm triggerすべてがうまくいきました。

これにより、(実際)udevイベントの発生とデバイスの実際の準備との間には少し時間があると信じていました。私の偽のudevイベントにはコンソールが開いていて、/ dev / fw1が常に存在して準備されているため、この問題はありません。

実際にsleep 2スクリプトに追加すると問題は解決しましたが、この解決策は満足できません。負荷がひどい場合は3〜4秒かかることがあるので、壊れやすく見えます。そして私には寛大なので、余計なsleep遅延がたくさん発生しました。

それでは、デバイスが実際にいつ準備されたかを知る方法はありますか?

関連情報