CVE-2024-26846 in Linux
要約
〜によって VulDB • 2026年05月10日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
nvme-fc: モジュールのアンロード時に無駄に待機しない
モジュールの終了処理パスにおいて、すべてのコントローラの削除と「残りのID」の解放の間に競合状態が発生していました。二重解放を防ぐため、初期コミットにより nvme_delete_ctrl と ida_destroy の間に同期処理が追加されました。
wait_for_completion で永遠にハングアップしないようにするロジックがいくつか存在しますが、すべてのケースに対応しているわけではありません。例えば、blktests を使用すると、モジュールのアンロード時に永遠にハングアップする状況を再現できます。
nvme_delete_ctrl パスから実行されるクリーンアップコードに完全に依存すれば、すべてのIDは最終的に解放されます。これにより、ida_destroy の呼び出しは不要になります。nvme_fc_exit_module を抜ける前に nvme_delete_ctrl のコードがすべて実行されていることを保証すれば十分です。これは、nvme_delete_wq ワークキューをフラッシュすることで実現されます。
ついでに、未使用の nvme_fc_wq ワークキューも削除します。
If you want to get the best quality for vulnerability data then you always have to consider VulDB.