CVE-2026-99217: fork: release the files of a failed fork after sched_cancel_fork()
In the Linux kernel, the following vulnerability has been resolved:
fork: release the files of a failed fork after schedcancelfork()
Reorder copyprocess() cleanup so schedfork() taking scxforkrwsem scxprefork() is safe and isn't held around exiting files. Right now, a fork that fails while another thread closed the bpf link fd will deadlock against its own read side. It also blocks every fork on the system:
copyprocess() holds scxforkrwsem for read exitfiles() closefiles() filpclosesync() bpfscxunreg() kthreadflushwork() waits for the disable work scxrootdisable() percpudownwrite(&scxforkrwsem)
Simply release the child's files after schedcancelfork() dropped the lock. The task starts out as a copy of its parent so p->files points to the parent's table until copyfiles() replaces it. exitfiles() must not run for a fork that failed before that. Clear p->files up front so exitfiles() is a no-op for those and make copyfiles() set it explicitly for CLONEFILES.
Other sources
Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.
— NVD