CVE-2026-90379 in Linux
要約
〜によって VulDB • 2026年09月18日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
wifi: mt76: mt7921: システムクラッシュを防止するためのPCIe AERハンドラサポートの追加
AERエラーが発生しバスがハングした際、レジスタ読み取りは0xFFFFFFFFを返すため、DMAキューの状態が破損し、q->desc[]やq->entry[]へのアクセス時に無効なメモリアクセスを引き起こします。
virtual address ffffffc01099eac0 でのカーネルページリクエストの処理不能 pc : mt76_dma_add_buf+0x124/0x188 [mt76]
lr : mt76_dma_rx_fill+0x11c/0x1d8 [mt76]
sp : ffffffc016d9bbf0 x29: ffffffc016d9bc10 x28: 0000000000000000 x27: 0000000000000000 x26: ffffffb7855e50b8 x25: ffffffb80d04f000 x24: 0000000000000000 x23: 0000000000000ec0 x22: ffffffb796803648 x21: ffffffb796801f80 x20: ffffffb7968035f8 x19: 0000000000000ec0 x18: 0000000000000000 x17: 000000004ec00000 x16: 000000000ec00000 x15: ffffffc01099eac0 x14: 000000004ec00000 x13: 00000000ffc5a000 x12: ffffffc016d9bc32 x11: 00000000ffffffff x10: 0000000000000002 x9 : 0000000000000000 x8 : 000000000000b4ac x7 : 0000000000000a20 x6 : ffffffb6c1806400 x5 : 0000000000000000 x4 : ffffffb80d04f000 x3 : 0000000000000000 x2 : 0000000000000001 x1 : 000000000ec04000 x0 : ffffffb7968035f8 Call trace: mt76_dma_add_buf+0x124/0x188 [mt76 (HASH:1029 4)]
mt76_dma_rx_reset+0xe8/0xfc [mt76 (HASH:1029 4)]
mt7921_wpdma_reset+0x188/0x1b0 [mt7921e (HASH:ee48 5)]
mt7921e_mac_reset+0x128/0x418 [mt7921e (HASH:ee48 5)]
mt7921_mac_reset_work+0xac/0x1a8 [mt7921_common (HASH:f721 6)]
process_one_work+0x188/0x514 worker_thread+0x12c/0x300 kthread+0x140/0x1fc ret_from_fork+0x10/0x30
ハードウェアから読み取られたDMAインデックスをキューインデックスとして使用する前に検証することで、無効なメモリアクセスを修正します。バスがハングしている際に返されるような範囲外の値(例: 0xFFFFFFFF)は、q->headやq->tailの破損を防ぐためにクリンプされます。さらに、mt7921_mac_reset_work()内でリセットシーケンスを試みる前にbus_hungフラグを確認し、バスがハングしている間はMCUメッセージを拒否し、回復不能なAERエラーが検出された際にはno-opのバス操作を導入することで、さらなる無効なハードウェアアクセスを防ぎます。
接続されたハードウェアリセットピンがないことやホスト再プローブ機能の欠如といったハードウェア制限のため、影響を受けるWi-Fiデバイスは、特定のエラー発生後にAERを有効にしても正常な動作状態に完全に回復しない場合があります。
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.