CVE-2026-63804: gfs2: fix use-after-free in gfs2_qd_dealloc
In the Linux kernel, the following vulnerability has been resolved:
gfs2: fix use-after-free in gfs2qddealloc
gfs2qddealloc(), called as an RCU callback from gfs2qddispose(), accesses the superblock object sdp through qd->qdsbd after freeing qd. It does so to decrement sdquotacount and wake up sdkillwait.
However, by the time the RCU callback runs, gfs2putsuper() may have already freed sdp via freesbd(). This can happen when gfs2quotacleanup() is called during unmount: it disposes of quota objects via callrcu() and then waits on sdkillwait with a 60-second timeout. If the timeout expires, or if gfs2glhashclear() triggers additional qdput() calls that schedule more RCU callbacks after the wait completes, gfs2putsuper() will proceed to free the superblock while RCU callbacks referencing it are still pending.
Add an rcubarrier() before freesbd() in gfs2putsuper() to ensure all pending RCU callbacks (including gfs2qddealloc) have completed before the superblock is freed.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Compensating control
In gfs2_qd_dealloc (called as an RCU callback from gfs2_qd_dispose()), add an rcu_barrier() before free_sbd() in gfs2_put_super() so that all pending RCU callbacks (including gfs2_qd_dealloc) have completed before the superblock (sdp) is freed.
Event History
Frequently Asked Questions
What is the severity of CVE-2026-63804?
The severity of CVE-2026-63804 is high with a CVSS score of 7.8.
How does CVE-2026-63804 affect the Linux kernel?
CVE-2026-63804 affects the Linux kernel by introducing a use-after-free vulnerability in the gfs2_qd_dealloc function.
What is the impact of CVE-2026-63804?
The impact of CVE-2026-63804 includes potential unauthorized access to sensitive data due to use-after-free exploitation.
How do I fix CVE-2026-63804?
To fix CVE-2026-63804, update the Linux kernel to the latest version that includes the patch for this vulnerability.
When was CVE-2026-63804 published?
CVE-2026-63804 was published on July 19, 2026.