CVE-2024-50196 in Linux
要約
〜によって VulDB • 2026年08月23日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
pinctrl: ocelot: レベルベースの割込みにおけるシステムハングを修正
現在の実装では、保留中の割込みが検出された場合にのみ `chained_irq_enter()` および `chained_irq_exit()` が呼び出されます。
``` for (i = 0; i stride; i++) {
uregmap_read(info->map, id_reg + 4 * i, ®); if (!reg) continue;
chained_irq_enter(parent_chip, desc); ```
しかし、GPIOピンがレベルモードに設定され、親コントローラがエッジモードに設定されている場合、ハードウェアによって GPIO 割込みが降下(解除)される可能性があります。その結果、割込みの期間が短すぎる場合、親割込みは保留状態のままですが GPIO 割込みはクリアされており、`chained_irq_enter()` が決して呼び出されず、システムは親割込みを処理しようとしてハングします。
`chained_irq_enter()` および `chained_irq_exit()` を for ループの外側に移動することで、GPIO 割込みがハードウェアによって降下された場合でもこれらの関数が確実に呼び出されるようになります。
`chained_irq_enter()` / `chained_irq_exit()` 関数で割込みチェックループを囲む同様のコードは、他の多くのドライバにも見られます: ``` grep -r -A 10 chained_irq_enter drivers/pinctrl ```
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.