CVE-2026-43371 in Linux情報

要約

〜によって VulDB • 2026年05月10日

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

net: macb: tx有効化前にtxリングをシャッフルする

Quanyang氏は、AMD ZynqMpボードでNFS rootfsを使用している場合、サスペンド後にrootfsの復旧に長時間かかる場合があることを観察しました。調査の結果、この問題はmacbドライバの問題に起因することが判明しました。

Zynq UltraScale TRM [1] によると、送信が無効化されると、送信バッファキューポインタは送信バッファキューベースアドレスレジスタで指定されたアドレスを指すようにリセットされます。

現在の実装では、コードは単に `queue->tx_head` と `queue->tx_tail` を '0' にリセットしています。このアプローチにはいくつかの問題があります。

- txリングに既にキューイングされているパケットが静かに失われ、関連するskbsが解放できないため、メモリリークを引き起こします。

- `queue->tx_head` と `queue->tx_tail` への並行書き込みアクセスが、これらの値が '0' にリセットされる際に `macb_tx_poll()` または `macb_start_xmit()` から発生する可能性があります。

- 送信済みで 'TX_USED' ビットが設定されているが、まだ処理されていないパケットで送信が固まることがあります。しかし、'queue->tx_head' と 'queue->tx_tail' の操作により、`macb_tx_poll()` は `queue->tx_head == queue->tx_tail` であるため、処理すべきパケットがないと誤って判断します。この問題は、新しいパケットがこの位置に配置された場合にのみ解決されます。これが、NFSルートファイルシステムで観察される長時間の復旧時間の根本原因です。

この問題を解決するために、txリングとtx skb配列をシャッフルし、未送信の最初のパケットがtxリングの先頭に位置するようにします。さらに、`queue->tx_head` と `queue->tx_tail` への更新が適切なロックで適切に保護されるようにします。

[1] https://docs.amd.com/v/u/en-US/ug1085-zynq-ultrascale-trm

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

責任者

Linux

予約する

2026年05月01日

モデレーション

承諾済み

エントリ

VDB-362171

EPSS

0.00013

アクティビティ

非常低い

ソース

Do you know our Splunk app?

Download it now for free!