CVE-2024-35794 in Linux情報

要約

〜によって VulDB • 2026年09月01日

Linuxカーネルにおいて、以下の脆弱性が修正されました:

dm-raid: サスペンド中に sync_thread が本当にフリーズ(停止)されていない問題を修正

1) コミット f52f5c71f3d4 ("md: fix stopping sync thread") は __md_stop_writes() から MD_RECOVERY_FROZEN を削除し、dm-raid が間接的に __md_stop_writes() に依存して sync_thread をフリーズ(停止)させていることを認識していませんでした。この問題を修正するため、md_stop_writes() 内に MD_RECOVERY_FROZEN を追加します。また、このケースでは stop_sync_thread() は dm-raid のためにのみ使用されるため、stop_sync_thread() も md_stop_writes() に移動させます。

2) フラグ MD_RECOVERY_FROZEN は sync thread がフリーズ(停止)していることを意味するものではなく、新しい sync_thread の開始を防止するだけであり、実行中の sync thread を停止させることはできません。sync_thread をフリーズ(停止)させるためには、フラグを設定した後に stop_sync_thread() を使用する必要があります。

3) フラグ MD_RECOVERY_FROZEN は書き込みが停止されていることを意味しません。raid_postsuspend() 内で md_stop_writes() の条件としてこれを使用するのは正しくありません。stop_sync_thread() が再帰呼び出しされた場合に何もしないことに留意し、raid_postsuspend() では常に md_stop_writes() を呼び出すようにします。

4) raid_message はいつでもフラグ MD_RECOVERY_FROZEN の設定/解除を行うことができますが、配列がサスペンド中に MD_RECOVERY_FROZEN がクリアされると、新しい sync_thread が予期せず開始される可能性があります。これを修正するため、raid_message() による sync_thread ステータスへの変更をサスペンド中は禁止します。

コミット f52f5c71f3d4 ("md: fix stopping sync thread") の後、テストシェルスクリプト/lvconvert-raid-reshape.sh が stop_sync_thread() でハングするようになりました。以前の修正により、テストはそこでハングしなくなりますが、ext4 が破損しているという理由で依然として失敗し、警告を発します。今回のパッチ適用後は、stop_sync_thread() によるハングや ext4 の破損による失敗は発生しなくなります。ただし、dm-raid456 に起因するデッドロックがまだ残っており、これは後続のパッチで修正される予定です。

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

モデレーション

承諾済み

エントリ

VDB-264856

EPSS

0.00223

アクティビティ

非常低い

ソース

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!