Linuxカーネルにおいて、greybus: gb-beagleplayのhdlc_tx_frames()関数内でスピンロックを保持したままスリープする不適切な動作が発見されました。この問題は、hdlc_append()関数がバッファの空き容量を待つためにusleep_range()を呼び出し、結果として「BUG: scheduling while atomic」というスケジューリングエラーを引き起こす可能性があることに起因します。本脆弱性は、スリープ処理をスピンロック取得前に移動し、フレームの完全な書き込みを保証する形で修正されました。この修正により、ロックが保持された状態でのスリープを回避し、システムの安定性を向上させます。