Fix for Unbalanced Locking in pc_clock_settime()
Summary
In the Linux kernel, the following vulnerability has been resolved: posix-clock: posix-clock: Fix unbalanced locking in pc_clock_settime() If get_clock_desc() succeeds, it calls fget() for the clockid's fd, and get the clk->rwsem read lock, so the error path should release the lock to make the lock balance and fput the clockid's fd to make the refcount balance and release the fd related resource. However the below commit left the error path locked behind resulting in unbalanced locking. Check timespec64_valid_strict() before get_clock_desc() to fix it, because the "ts" is not changed after that. [[email protected]: fixed commit message typo]
Affected Version(s)
Linux < 29f085345cde
Linux < e0c966bd3e31
Linux < 673a1c5a2998
CVSS V3.1
Timeline
Vulnerability published.
Vulnerability Reserved.