In the Linux kernel, the following vulnerability has been resolved:
gfs2: Fix possible data races in gfs2showoptions()
Some fields such as gtlogdsecs of the struct gfs2tune are accessed without holding the lock gtspin in gfs2showoptions():
val = sdp->sdtune.gtlogdsecs; if (val != 30) seqprintf(s, ",commit=%d", val);
And thus can cause data races when gfs2showoptions() and other functions such as gfs2_reconfigure() are concurrently executed:
spinlock(>->gtspin); gt->gtlogdsecs = newargs->ar_commit;
To fix these possible data races, the lock sdp->sdtune.gtspin is acquired before accessing the fields of gfs2_tune and released after these accesses.
Further changes by Andreas: