Linux kernel 7.3.1 ships with fixes for a KASLR leak, coredump races, and io_uring hangs
The first stable point of the 7.3 cycle lands with 39 backported bugfixes. No features, but a real kernel-pointer leak gets closed.
Linux kernel 7.3.1 is out. Greg Kroah-Hartman pushed the stable snapshot Friday, October 30, 2026, at 13:09 CET, right on top of the 7.3 feature release Linus Torvalds shipped three weeks earlier.
By the numbers it's a quiet one. The ChangeLog lists 40 commits, split as one release commit plus 39 backported bugfixes. That's a normal ".1" update: focused, vetted, nothing flashy.
Let's talk about what actually changed, since the version number alone won't tell you.
What's actually in the patch
The largest single block is Christian Brauner's ten-patch series around process teardown. The core idea is simple enough: a coredump shouldn't get silently truncated when the kernel fires signals at a dying process. A truncated dump is forensic garbage, and it makes debugging a genuine pain.
Keep in mind that these fixes sound abstract until you've chased a crash dump and found it cut off mid-write. Brauner's series closes those gaps — the exit and tty ordering, the TIF_NOTIFY_SIGNAL interruptions, and a fork deadlock that could, in theory, block every fork on the box.
The security cluster is where you'll want to lean in. Kyle Zeng's patch makes keyring indexes independent of kernel addresses. That's the standout fix. Previously KEYCTL_READ leaked associative-array ordering derived from real kernel pointers, letting an unprivileged user predict a KASLR slide. As few as 45 keys on a typical x86-64 build did the trick. The index now hashes opaque IDs with a SipHash key.
A handful more keys patches round out the cluster: use-after-frees while key modules unload, a NULL-deref that could oops the kernel, and a race in key_reject_and_link.
The rest of the tree is more mundane but still worth a glance. io_uring gets roughly five reliability patches, with Jens Axboe leading a multishot-poll hang fix and a drain that deferred requests far longer than expected. There's also a PREEMPT_RT latency fix measured on a Jetson Orin Nano, where the worst-case wakeup dropped from roughly 1,040 microseconds to about 18. Not a small gap.
Tracing and ftrace pick up about nine patches, mostly use-after-frees plus a couple of security-relevant ones. Rostedt's tree also closes an out-of-bounds read, prog[-1], triggered by an incomplete event filter.
Other smaller fixes round out the usual misc pile: a Bluetooth L2CAP use-after-free (this one credits deepseek-4-flash for spotting the race), a DAMON division-by-zero guard, and a fix that restores the CPU header in /proc/interrupts on large systems.
Here's the bit that won't show up in most coverage. A handful of these patches carry "Assisted-by" credits: Claude, Codex, DeepSeek, a generic "LLM." It's the "AI normal" Torvalds talks about, now reaching even the stable tree. Humans still author, review, and sign off. Greg KH signed all 40 commits himself. But the trend is unmistakable, and it's sitting in the bugfix line now, not just mainline.
For context, 7.3 itself was one of the largest cycles on record. Torvalds shipped it Sunday, October 18, on schedule after seven release candidates, and he was blunt about the sheer volume. There's no tidy highlights list, he wrote, "mainly due to the insanely vast size of it, so we all have to sleuth over what we can gather from all the code requests." Coverage has floated figures like ~15,267 merge-window commits and a codebase now at roughly 40.98 million lines.
Linux kernel 7.3.1 released
Linux kernel version 7.3.1 is now available:
Full source: https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.3.1.tar.xz
Patch: https://cdn.kernel.org/pub/linux/kernel/v7.x/patch-7.3.1.xz
PGP Signature: https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.3.1.tar.sign
You can view the summary of the changes at the following URL:
https://git.kernel.org/stable/ds/v7.3.1/v7.3
