CVE-2026-74735: l2tp: fix tunnel and session refcount leak on seq_file release
In the Linux kernel, the following vulnerability has been resolved:
l2tp: fix tunnel and session refcount leak on seqfile release
In pppol2tpprocopen() and l2tpdfsseqopen(), iteration state (pd->tunnel and pd->session) is kept in seqfile private data to allow iteration across multiple read() system calls.
However, if userspace closes /proc/net/pppol2tp or /sys/kernel/debug/l2tp/tunnels before reading to end-of-file (EOF), any tunnel or session reference stored in pd->tunnel / pd->session is left un-dropped when seqfile private data is freed.
Fix this by dropping any remaining pd->tunnel and pd->session references in pppol2tpprocrelease() and l2tpdfsseqrelease() when closing the file.
Affected Software
Event History
Frequently Asked Questions
What conditions are required to trigger the reference leak?
A userspace process must open /proc/net/pppol2tp or /sys/kernel/debug/l2tp/tunnels, cause tunnel or session iteration state to be retained, and then close the file before reading it to EOF. The unreleased references are associated with the tunnel and session stored in the seq_file private data.
Which systems are exposed through the debugfs path?
The /sys/kernel/debug/l2tp/tunnels path is relevant only where the L2TP debugfs interface is available. The other affected path, /proc/net/pppol2tp, is a procfs interface.
How can I tell whether the leak may already have occurred?
The described condition is premature closure of either affected file after iteration state has retained tunnel or session references. The provided information does not specify a log message, counter, or other direct detection method.