0
Irqサービスルーチンのカーネルログにメッセージを印刷する必要があるため、割り込みコンテキストになっています。私はprintkがこのシナリオには推奨されないことを理解しています。だからここで最善の選択肢は何ですか? ありがとうございます。割り込みコンテキストでkmsgを安全に印刷するにはどうすればいいですか
printk_deferredに関する1つのオプションについて聞いたことがありますが、これはスケジューラで使用されていることに気付きましたが、irq isrでどこで使用されているのかはまだわかりません。誰でもprintk_deferredとprintkの違いを説明できますか?
割り込みハンドラの中の[printkの重複した可能性はありますか?](https://stackoverflow.com/questions/8738951/printk-inside-an-interrupt-handler-is-it-really-that -bad) – sawdust
どの割り込みをログに記録しますか?その割り込みが2番目に数千回生成されるとどうなりますか?すべてのシングルアクションを本当にログに記録しますか? これは実際にお勧めしますように、私はタスクレット、softirqまたはworkqueueで延期されたアクションを作成します。 'request_irq'ルーチンを持っているドライバを見てください。IRQハンドラはサービス関数を直接呼び出さないので、IRQハンドラが必要です。 – 0xDen
コメントのおかげで、@ 0xDen 割り込みは20msごとに生成されます。メッセージを印刷するための条件チェックがあります。印刷メッセージが約10分ごとに発生したとしましょう。 –