wait_event_timeout
指定された時間、または何らかの条件が真になるまで、スレッドをスリープ状態にするために使用できます。
この条件が共有変数である状況に直面しています。
ret = wait_event_timeout(SLEEP_Q,shared_vaible == 1,TIME_TO_SLEEP);
spinlock
これを呼び出す前に、共有変数へのアクセスに使用する を手放す必要があります。
だから私の質問は、共有変数がロックを使用せずに読み取られるため、正確性が損なわれることですか?
カーネルは、wait_event
インターフェイスのそのような条件に競合条件がないことを保証しますか?