NetSight
high7.8

CVE-2021-47254

In the Linux kernel, the following vulnerability has been resolved: gfs2: Fix use-after-free in gfs2_glock_shrink_scan The GLF_LRU flag is checked under lru_lo…

Impact

In the Linux kernel, the following vulnerability has been resolved: gfs2: Fix use-after-free in gfs2_glock_shrink_scan The GLF_LRU flag is checked under lru_lock in gfs2_glock_remove_from_lru() to remove the glock from the lru list in __gfs2_glock_put(). On the shrink scan path, the same flag is cleared under lru_lock but because of cond_resched_lock(&lru_lock) in gfs2_dispose_glock_lru(), progress on the put side can be made without deleting the glock from the lru list. Keep GLF_LRU across the race window opened by cond_resched_lock(&lru_lock) to ensure correct behavior on both sides - clear GLF_LRU after list_del under lru_lock.

Affected products

VendorProductAffected versions
LinuxLinux Kernel
from 4.4.181 before 4.4.274
from 4.9.180 before 4.9.274
from 4.14.123 before 4.14.238
from 4.19.47 before 4.19.196
from 5.0.20 before 5.1
from 5.1.6 before 5.4.127

Weakness classification

References