New stressors
- pinmem - pinned memory stressor
- sleepstorm - storm of sleeping pthread wakeups stressor
- snd-pcm - Linux sound PCM driver stressor
- snd-timer - Linux sound timer stressor
- v4l2 - video for linux (version2) ioctl() stressor
New options
- --cyclic-budget - specify a worst case latency budget in nanoseconds
- --filerace-files - specify the maximum number of files to race on
- --mmapmany-mappings - specify maximum number of mmap mappings to attempt
- --sleep-affinity - switch CPU affinity
Many thanks to the following sponsors of the project (in alphabetical order)
Bruce Underhill (Codethink)
Chris Wayne
Gilbert Morgan
ELISA https://elisa.tech - Platinum sponsor
Premday https://premday.org - Platinum sponsor (NEW)
Sponsorship link: https://github.com/sponsors/ColinIanKing
Notable fixes
- fix LTO build error with gentoo builds
#685 - core-filesystem: use stress_fs_clean_dir_files() to remove temp files
#683 - stress-chattr: handle ENOSPC more gracefully
#676
Detailed changelog
Austin Rhodes
- Add updated QUICKSTART.md guide to repo root
Michael Newman
- Track sbrk in syscalls.txt
- Fix munamp and mrema typos
- Fix batch of typos
Pablo Ridolfi
- stress-cyclic: add --cyclic-budget N option
Sergey Matyukevich
- stress-ng: update man entry for mmapfork
- stress-mmapfork: do not halve requested mmapfork-bytes
Woodrow Shen
- stress-vdso: add DT_GNU_HASH support to find vDSO symbols
Colin Ian King
- stress-ng: fix sort order of --class types
- QUICKSTART.md: add breaks in lines so that lintian does not complain
- kernel-coverage: add -f option to specify fault injection type
- kernel-coverage: add --make-it-fail to enable error injection
- README.md: update contributor list
- stress-sleepstorm: define _POSIX_PTHREAD_SEMANTICS for Solaris pthreads
- stress-sleepstorm: replace HAVE_SCHED_SETAFFINITY for HAVE_PTHREAD_SETAFFINITY_NP
- stress-sleepstorm: add build time check for SIGRTMIN
- kernel-coverage: load vivid v4l2 test drivers
- kernel-coverage: add --filter missing to genhtml
- stress-snd-timer: clarify timer warp message
- Manual: minor tweak to text
- kernel-coverage: add pinmem stressor
- kernel-coverage: add sleepstorm stressor
- core-cpu: fix LTO build error with gentoo builds
- stress-sleepstorm: apply hammer when terminating pthreads
- stress-sleepstorm: run pthreads at a nicer priority than controlling process
- core-shim: fix shim_gettid to return pid_t and not an int
- stress-sleepstorm: add more feature flags
- stress-sleepstorm: add missing argument on --sleepstorm-sleep-ms short help
- bash-completion: add sleepstorm options
- stress-sleepstorm: add new stressor to create a storm of sleeping pthreads wakeup
- stress-cap: update documentation, uses capset(2) as well as catget(2)
- core-filesystem: add missing file system magic entries
- README.md: add three more kernel bug fix references
- core-filesystem: use stress_fs_clean_dir_files() to remove temp files
- stress-tlb-numa: fix missing casts on calloc return
- stress-sleep: fix missing casts on calloc return
- stress-snd-pcm: fix missing casts on calloc return
- stress-rofs: fix missing casts on calloc return
- stress-pinmem: fix missing casts on calloc return
- stress-ovpn: fix missing casts on calloc return
- stress-numacopy: fix missing casts on calloc return
- stress-ng: fix missing casts on calloc returns
- CITATIONS.md: add another reference link
- stress-pinmem: add metrics for % of physically mapped pages
- core-memory: compute availablemem
- core-memory: add some memory available notes
- stress-verity: exercise mmap on verity enabled file
- stress-verity: exercise readahead on verity enabled files
- stress-v4l2: use shim_qsort rather than qsort_bm
- core-madvise: use shim_qsort rather than qsort_bm
- stress-v4l2: add missing cast on calloc return
- stress-chroot: exercise fchroot()
- core-shim: add shim for fchroot system call
- stress-close: exercise CLOSE_RANGE_EXCEPT and CLOSE_RANGE_CLOEXEC_ONLY
- stress-v4l2: check for open failures, terminate early
- READM.md: update contributor list
- stress-v4l2: add a new Video for Linux interface stressor
- stress-ng: add stress_ksm_merge helper function
- stress-sleep: fix build for systems without getaffinity/setaffinity
- core-memory: only build in stress_memory_available_get when it's required
- stress-ng: add --drop-caches option to page cache, inode and dentry caches
- stress-pinmem: show amount of available memory is being pinned by default
- .gitignore: add apparmor-data.h
- stress-pinmem: move declaration of mem_info
- stress-pinmem: check for RLIMIT_MEMLOCK
- core-memory: rename availmem to availablemem
- stress-pinmem: update reason why stressor is unimplemented
- stress-mlock: split multiple declarations onto two lines
- README.md: add 3 more kernel bug refs to stress-ng
- README.md: add Vinix to systems that can build and run stress-ng
- Manual: Remove stray text
- stress-pinmem: add memory pinning stressor
- core-memory: add sharedram and bufferram fields to stress_memory_info
- presentations: add Linux Plumbers October 2026 slides
- stress-chattr: handle ENOSPC more gracefully
- stress-dev/pty: add checks for different termios structs
- stress-udp: exercise procfs files with stress_fs_file_exercise_read
- stress-schedmix: exercise procfs files with stress_fs_file_exercise_read
- stress-timer: exercise procfs file with stress_fs_file_exercise_read
- stress-sock: exercise procfs files with stress_fs_file_exercise_read
- stress-key: exercise procfs files with stress_fs_file_exercise_read
- stress-icmp-flood: exercise procfs file with stress_fs_file_exercise_read
- stress-flock: exercise procfs file with stress_fs_file_exercise_read
- stress-cpu-sched: exercise procfs and sysfs with stress_fs_file_exercise_read
- core-filesystem: add helper to exercise file reading/mapping
- stress-ng: exercise WR_ONLY open access files
- stress-snd-pcm: add snd pcm ioctl stressor
- features: fix memory-loads and memory-stores typos
- stress-memfd: exercise overly long memfd name
- stress-mmaptorture: add random anon MAP_SHARED or MAP_PRIVATE mapping
- stress-nanosleep: attempt to get even useage of each C state
- stress-shm-sysv: use IPC_SET instead of SHM_SET
- kernel-coverage: add some more stressor options
- CITATIONS.md: add two more references
- stress-udp-flood: remove need check for AF_PACKET
- stress-iomix: add slow direct I/O read/writes
- core-shim: add missing extern on shim_getpwuid_r
- stress-pty: include asm/termbits.h for ioctls and add pty hanghup
- README.md: update number of stressors to 390+
- stress-snd-timer: add /dev/snd/timer stressor
- CITATIONS.md: add another reference
- stress-loop: exercise each loop devices /sysfs entries
- core-cpu: add some more MCST Elbrus virtual machine cpuid strings
- stress-filerace: remove debug
- stress-userfaultfd: use stress_mwc1() for 0/1 random values
- test-builtin-expect: remove include of math.h
- Manual: add --filerace-files option
- bash-completion: add --daemon-bloat and --sleep-affinity options
- stress-filerace: add --filerace-files N option
- stress-sleep: fix resource leak on cpus array
- stress-mmanymany: add --mmapmany-mappings N option
- Manual: fix spelling mistake "randonmly" -> "randomly"
- stress-sleep: add --sleep-affinity option
- stress-sleep: make pointer cstate_list const
- stress-sigsegv: remove UNLIKELY macro
- stress-lease: reduce scope of variable count
- stress-inotify: make dirent pointer d const
- stress-flipflop: make pointer w const
- stress-cpu-sched: rename sigset to set to avoid name shadowing
- stress-affinity: reduce scope of variable i
- core-shim: rename function arg dirfd to dir_fd to avoid name shadowing