CyberRota Analysis
AI-GeneratedThe vulnerability in the Linux kernel affects the pds_core component, specifically the pdsc_devcmd_wait() function, which improperly handles error states during firmware crashes and command timeouts. This flaw can lead to stale success statuses being returned, potentially allowing the system to operate under false pretenses and compromising stability and reliability. Organizations utilizing Linux systems, particularly those relying on firmware interactions, should prioritize addressing this vulnerability to mitigate risks of system failures and ensure robust error handling.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: pds_core: fix error handling in pdsc_devcmd_wait Fix two cases where pdsc_devcmd_wait() returns stale success from the completion register instead of an error: 1. FW crash: If firmware stops running, the wait loop breaks early with running=false. The condition "if ((!done || timeout) && running)" is false, so error handling is bypassed and stale status is returned. Check !running first and return -ENXIO. 2. Timeout: If a command times out, err is set to -ETIMEDOUT but then overwritten by pdsc_err_to_errno(status) which reads stale status. Return -ETIMEDOUT immediately after cleaning up. Both errors now propagate to pdsc_devcmd_locked() which queues health_work for recovery.
Related CVEs
Other vulnerabilities affecting the same vendor(s)