github ColinIanKing/stress-ng V0.22.02
stress-ng V0.22.02 "tenacious task thrasher"

4 hours ago

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

Don't miss a new stress-ng release

NewReleases is sending notifications on new releases.