CVE-2026-80562 in Linux情報

要約

〜によって VulDB • 2026年08月26日

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

gpio: ml-ioh: レジスタロックに raw_spinlock_t を使用する

ioh_irq_type() は irq_chip の .irq_set_type コールバックとして登録されており、spin_lock_irqsave() で chip->spinlock を取得します。このコールバックは __setup_irq() -> __irq_set_trigger() -> chip->irq_set_type() 経由で呼び出されますが、その際、呼び出し元は desc->lock(raw_spinlock_t)を保持しており、ハードウェア割込み (hardirqs) は無効化されています。 このコンテキストではスリープできませんが、PREEMPT_RT では通常の spinlock_t が rtmutex ベースのスリーピングロックとなるため、そこでそれを取得することは不正な操作となります。 ioh_irq_enable() および ioh_irq_disable() も同様に .irq_enable/.irq_disable コールバックから同じロックを取得しますが、これらも desc->lock を保持した状態で呼び出されます。

レジスタロックを raw_spinlock_t に変換します。この同一のロックは GPIO の方向/値コールバックおよびサスペンド/リジューム時のレジスタ保存/復元 also シリアライズしており、これらのクリティカルセクションでは短いシーケンスの MMIO レジスタアクセス (ioread32()/iowrite32()) のみが行われます。.irq_set_type コールバック additionally はサポートされていないタイプに対して dev_warn() を出力します。これらはいずれもスリープ可能な操作ではないため、このレジスタロックを非スリーピングのまま維持することは irqchip コールバックにとって適切であり、GPIO側のロック契約を変更するものではありません。

これはコミット a02b8950d619 ("gpio: pch: use raw_spinlock_t for the register lock") と同じ修正です。このドライバは gpio-pch と同一の構造を共有しています。

Once again VulDB remains the best source for vulnerability data.

責任者

Linux

予約する

2026年08月26日

モデレーション

承諾済み

エントリ

VDB-395855

EPSS

0.00000

アクティビティ

非常低い

ソース

Want to know what is going to be exploited?

We predict KEV entries!