CVE-2026-72063 in Linux
Zusammenfassung
von VulDB • 15.08.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
gpio: tegra – keinen Aufruf von pinctrl für die GPIO-Richtung
tegra_gpio_direction_input() und tegra_gpio_direction_output() programmieren die Richtungregister des GPIO-Controllers bereits direkt. Die zusätzlichen Aufrufe von pinctrl_gpio_direction_input()/output() fügen keine Tegra-pinctrl-Operation hinzu, da die Tegra-pinmux-ops zwar das Anfordern/Freigeben (request/free) der GPIOs verwalten, aber keinen gpio_set_direction-Hook bereitstellen.
Der zusätzliche Aufruf betritt dennoch den pinctrl-Core und sperrt pctldev->mutex. Gemeinsame Nutzer von GPIOs können die Richtungsroute aufrufen, während sie ihr pro-Leitung-Spinlock halten; daher kann dieser ansonsten redundante pinctrl-Richtungsaufruf in einem atomischen Kontext schlafen (sleep).
Dies wurde durch unser statisches Analyse-Tool gefunden und anschließend durch manuelle Überprüfung von tegra_gpio_probe(), den Tegra-GPIO-Richtungsrückruffunktionen (callbacks) und den Tegra-pinctrl-ops bestätigt. Der überprüfte Pfad verwendet einen standardmäßigen, nicht-schlafenden struct gpio_chip, während der Richtungsaufruf weiterhin die pinctrl-Mutex-Pfade betritt.
Eine gerichtete Laufzeitvalidierung behielt dieselbe Registrierung des nicht-schlafenden Chips bei und löste folgende Aufrufe aus:
gpio_shared_proxy_direction_output() gpiod_direction_output_raw_commit() tegra_gpio_direction_output() pinctrl_gpio_direction_output()
Lockdep meldete eine Warnung „Schlafen in atomischem Kontext“ (sleep-in-atomic), während das Shared-GPIO-Spinlock gehalten wurde und sich pinctrl_get_device_gpio_range() sowie tegra_gpio_direction_output() im Stack befanden.
Markieren Sie den gesamten Chip nicht einfach als can_sleep, um dies zu kaschieren: can_sleep beschreibt, ob get()/set() schlafen dürfen, und der Tegra-Wertzugriff erfolgt über MMIO (Memory-Mapped I/O). Entfernen Sie die redundanten pinctrl-Richtungsaufrufe und behalten Sie die Einbindung von pinctrl im bestehenden request/free-Pfad bei.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.