2025-10-07 15:19:26
Linux
PUBLISHED
In the Linux kernel, the following vulnerability has been resolved: md: fix soft lockup in status_resync status_resync() will calculate curr_resync - recovery_active to show user a progress bar like following: [============>........] resync = 61.4% curr_resync and recovery_active is updated in md_do_sync(), and status_resync() can read them concurrently, hence its possible that curr_resync - recovery_active can overflow to a huge number. In this case status_resync() will be stuck in the loop to print a large amount of =, which will end up soft lockup. Fix the problem by setting resync to MD_RESYNC_ACTIVE in this case, this way resync in progress will be reported to user.