Syscalls added and removed in each Linux release

Every Linux release from 3.3 to 7.3, and the syscalls it added or removed across 27 architectures.

Most releases don't touch the syscall table at all. When one does, the new syscall usually lands on every architecture at once, often with the same number. Each release with changes has its own page.

RELEASEADDEDREMOVEDNOTES
Linux 7.3 1 -
Linux 7.2 - -
Linux 7.1 - -
Linux 7.0 3 -
Linux 6.19 1 -
Linux 6.18 1 -
Linux 6.17 2 -
Linux 6.16 - -
Linux 6.15 1 -
Linux 6.14 - -
Linux 6.13 4 -
Linux 6.12 - -
Linux 6.11 4 1
Linux 6.10 4 -
Linux 6.9 - -
Linux 6.8 5 -
Linux 6.7 4 1
Linux 6.6 2 -
Linux 6.5 2 -
Linux 6.4 2 -
Linux 6.3 - -
Linux 6.2 - -
Linux 6.1 - -
Linux 6.0 - -
Linux 5.19 - - first release scanned for loongarch64
Linux 5.18 - -
Linux 5.17 1 -
Linux 5.16 1 -
Linux 5.15 1 1
Linux 5.14 2 -
Linux 5.13 3 -
Linux 5.12 1 -
Linux 5.11 1 -
Linux 5.10 1 -
Linux 5.9 1 1
Linux 5.8 1 -
Linux 5.7 1 -
Linux 5.6 5 -
Linux 5.5 - -
Linux 5.4 2 -
Linux 5.3 2 -
Linux 5.2 6 -
Linux 5.1 50 2
Linux 5.0 1 - first release scanned for ppc64, ppc, mips64, mipsn32, mipso32, alpha, m68k, microblaze, parisc, sh, sparc, sparc64, xtensa
Linux 4.20 - - first release scanned for csky
Linux 4.19 2 -
Linux 4.18 2 -
Linux 4.17 1 -
Linux 4.16 - - first release scanned for s390x
Linux 4.15 1 - first release scanned for riscv64
Linux 4.14 - -
Linux 4.13 - -
Linux 4.12 1 -
Linux 4.11 1 -
Linux 4.10 - - first release scanned for arm
Linux 4.9 4 -
Linux 4.8 2 2
Linux 4.7 2 -
Linux 4.6 2 -
Linux 4.5 1 -
Linux 4.4 1 -
Linux 4.3 17 -
Linux 4.2 - -
Linux 4.1 - -
Linux 4.0 - -
Linux 3.19 1 - first release scanned for nios2
Linux 3.18 1 -
Linux 3.17 4 -
Linux 3.16 2 2
Linux 3.15 1 -
Linux 3.14 2 -
Linux 3.13 - -
Linux 3.12 - -
Linux 3.11 - -
Linux 3.10 - -
Linux 3.9 - - first release scanned for arc
Linux 3.8 1 -
Linux 3.7 - - first release scanned for arm64, hexagon, openrisc
Linux 3.6 3 2
Linux 3.5 1 -
Linux 3.4 1 1 first release scanned for x32
Linux 3.3 - - first release scanned for x64, x86, ia32

A syscall only counts as added when its architecture was already scanned in the release before. When a table starts in a release, everything in it was already there, so none of it shows up as new.