github ColinIanKing/stress-ng V0.20.00
stress-ng V0.20.00 "versatile vma vexer"

20 hours ago

New Stressors

varyload - generate variable CPU load over time with various user selectable loading patterns and loading change rates

New Options

make-it-fail - enable /proc/self/make-it-fail for child stress processes, useful for Linux error injection

Detailed Changelog

[Bernd Kuhls]

  • stress-pthread: fix non-NPTL build

[Michael Liebert]

  • Fix build for QNX 8

[Pierre Ducroquet]

  • stress-*: preserve LD_LIBRARY_PATH in all exec() calls (#587)

[Pranav P]

  • Fix: failure to cross build to s390x due to fmodulo-sched in Debian

[Shifrin Dmitry]

  • riscv: stress-cache: Add stresses per CBO funcs
  • riscv: Add cache flush

[Colin Ian King]

  • debian/changelog: update changelog for release V0.20.00
  • debian/control: update standards version to 4.7.3
  • Makefile: bump release
  • stress-ng: update copyright year to 2026
  • README.md: capitalize processor arches
  • stress-timerfd: reduce scope of variable rret
  • stress-physpage: reduce scope of variable found
  • stress-pci: reduce scope of variable i
  • CITATIONS.md: sort paper titles
  • CITATIONS.md: add some more paper links
  • README.md: Add openrisc and VAX architectures
  • core-cpu-cache: add L1 cache info for openrisc OR1K
  • Manual: fix cache size in stream description
  • stress-stream: force a minimum default stream buffer size, tidy up info messages
  • stress-priv-instr: add openrisc implementation
  • stress-ramfs: make read-only variable end const
  • stress-ptr-chase: make read-only variables j and addr const
  • stress-prio-inv: set child usage to zero on faild getrusage call
  • stress-poll: make read-only variable j const
  • stress-munmap: make variable lln const
  • stress-monte-carlo: add register hint to scale_u64
  • stress-module: make variable n const
  • stress-mmaprandom: make variable new_flags const
  • stress-mmapfixed: make variables n_pages_todo and sz const
  • stress-min-nanosleep: make variable lln const
  • stress-metamix: make variable ui32 const
  • stress-memthrash: make some read-only variables const
  • stress-matrix: make some read-only variables const
  • stress-matrix-3d: make some read-only variables const
  • stress-madvise: make read-only variable v const
  • stress-jpeg: make variable third const
  • stress-inotify: constify some variables and pointers
  • stress-icache: make function pointer icache_func const
  • stress-gpu: add empty line after variable declaration
  • stress-getdent: make function pointer func const
  • stress-get: remove empty line
  • stress-fma: constify a handful of variables
  • stress-filerace: constify some variables
  • stress-fibsearch: constify a handful of variables
  • stress-far-branch: make variable offset const
  • stress-epoll: make variable mypid const
  • stress-eigen: make variables inverse_n and geomean const
  • stress-dup: remove extraneous space in if statement
  • stress-dnotify: make variable flags_ms const
  • stress-dirdeep: make variable inodes const
  • stress-dccp: add space in division expression
  • core-config-check: don't emit low memory oom-avoid message if --oom-avoid is enabled
  • stress-mknod: replace dev_t memcpy with assignment
  • stress-sysinval: make hash noclobberable
  • stress-sysinval: fix off-by-one on bitmask array index, move syscall into new function
  • stress-fanotify: add ssize_t cast to clean up pedantic comparison warning
  • stress-fanotify: bail out on short reads less than struct size
  • core-madvise: fix incorrect use of madvise_options array
  • stress-flipflip: make each flipflop stuct 64 byte aligned
  • stress-flipflip: add typedef to struct definition
  • stress-procfs: use shim_memset for builtin memset
  • stress-mmaprandom: use shim_memset for builtin memset
  • stress-kvm: use shim_memset for builtin memset
  • stress-get: use shim_memset for builtin memset
  • stress-cachehammer: use shim_memset for builtin memset
  • stress-resctrl: use shim_strdup for builtin strdup
  • stress-filename: use shim_memcmp for builtin memcmp
  • stress-cpu-sched: use shim_memcpy for builtin memcpy
  • stress-zlib: add missing line between declaration and statement
  • stress-waitcpu: add missing line between declaration and statement
  • stress-vnni: make read-only variable rate const
  • stress-tree: make read-only variable rate const
  • stress-sysinval: make read-only variables j and syscall_num const
  • stress-sysfs: add register hint to variables s1 and s2
  • stress-sparsematrix: make read-only variables n1xy and n2xy const
  • stress-softlockup: make read-only variable n const
  • stress-signest: make read-only variable j const
  • stress-sigabrt: make read-only variable latency const
  • stress-rawdev: make read-only variable t const
  • stress-randlist: make read-only variable n const
  • stress-easyopcode: add simple opcodes for openrisc
  • stress-fp-error: only define stress_fp_check where necessary
  • stress-cache: make bad_addr non-clobberable for openrisc builds
  • stress-regs: implement openrisc implementation using scratch regs
  • stress-sigill: add openrisc supervisor only illegal userspace op
  • core-asm-ret: add openrisc return ops
  • Add initial OR1K openrisc build support
  • core-lock: work around gcc 4.8.4 over-optimisation
  • stress-matrix: fix type warnings with gcc 4.8.4
  • stress-matrix-3d: fix type warnings with gcc 4.8.4
  • stress-workload: clean up duplicate stress_workload_waste_time call warning
  • stress-ng.h: make bogo-ops max_ops volatile
  • test*: update copyright year to 2025
  • stress-*: update copyright year to 2025
  • CITATIONS.md: add a few more paper links
  • Makefile.config: fix typo: cexp -> cexpf
  • README.md: add another QEMU bug found with stress-ng
  • stress-cpu-cache: fix NetBSD VAX build failure, rename cache_line to cache_level
  • stress-mmap: make offset non-clobberable, fixes m68k gcc 15.2 pedantic warning
  • core-shim: only use strlcat if BSD string.h is available
  • stress-sigbus: clean up pedantic build warnings
  • stress-shm-sysv: clean up warning on armhf gcc 14.2.0 builds:
  • stress-mseal: don't use strerror in the same log call, part 2
  • stress-mseal: don't use strerror in the same log call
  • stress-stream: reduce stream buffer size by factor of 4
  • core-sort: remove TARGET_CLONES from stress_sort_data_int32_shuffle
  • core-attribute: remove NONSTRING attribute macro
  • README.md: update contributor list
  • test-asm-riscv-cbom: minor code style cleanups
  • stress-cache: reformat #if defined() to match coding style
  • stress-sigurg: F_SETOWN is required for a clean build, add check for this
  • stress-monte-carlo: add build time check of seed48
  • stress-pthread: remove alternative pthread stacks
  • README.md: add a FreeBSD kernel bug to kernel bug list
  • stress-fractal: use generic atomic_fetch_add instead of atomic_fetch_add_4
  • README.md: add reference to the citations list
  • CITATIONS.md: add two more research paper links
  • stress-mmaprandom: fix spelling mistake in comment
  • README.md: update build notes for Minix
  • stress-timermix: add check for SA_SIGINFO to fix Minix build issues
  • stress-mmaprandom: clean up Minix build warnings
  • stress-mmaprandom: fix build issue on Minix, use HAVE_MADVISE instead
  • Makefile: fix icc/gcc compiler detection
  • stress-pthread: bail out if clock_gettime fails
  • stress-syscall: Fix blocking BSD system call issues
  • README.md: remove -j from OS X make example
  • stress-cyclic: make mypid NOCLOBBERable
  • stress-sigsegv: set max mask shift of 46 bits for Solaris
  • stress-sigsegv: stress-sigsegv: set max mask shift of 46 bits for NetBSD and OpenBSD
  • stress-sigsegv: set max mask shift of 46 bits for FreeBSD
  • core-madvise, stress-madvise: don't allow MADV_GUARD_INSTALL
  • stress-madvise: don't add guard pages as accessing these will trip SIGSEGVs
  • stress-{mmaprandom|tree}: add ; after RB_PROTOTYPE
  • stress-msync: cast buf to uint8_t for pointer addition
  • stress-far-branch: clean up type cast warning
  • Makefile: add some more pedantic build flags
  • stress-pagemove: clean up type cast warning
  • core-net: clean up type cast warning
  • stress-efivar: clean up type cast warning
  • stress-udp: memcpy pid to/from buffer
  • stress-sysinval: clean up type cast warning
  • stress-stack: simplify stack touching array indexing
  • stress-spinmem: add pointer alignment hint to 16 byte boundary
  • stress-sigbus: add warnings comment
  • stress-schedpolicy: clean up type case alignment warning
  • stress-sctp: memcpy pid to/from buffer
  • stress-rmap: make rmap and paddings uintptr_t pointer types
  • stress-rawudp: clean up alignment copies and warnings
  • stress-rawpkt: clean up cast-align warning
  • stress-qsort: add alignment hints for pointers to qsort_swap_type_t
  • stress-pagemove: add alignment hints to at least a 4K page alignment
  • stress-mmapcow: clang requires alignment to be constant, make it 8
  • stress-ping-sock: clean up cast-align warning
  • stress-netlink-tast: clean up cast-align warning
  • stress-netlink-proc: clean up cast-align warning
  • stress-tun: clean up cast-align warning
  • stress-msync: use pointers to uint64_t types
  • stress-msg: clean up cast-align warning
  • stress-mmaphuge: use pointers to uint64_t types
  • stress-mmapfixed: use pointers to uint64_t types
  • stress-mmapcow: use pointers to uint64_t types and alignment hints
  • stress-lsm: use shim_assume_aligned for pointer cast
  • stress-file-ioctl: use shim_assume_aligned for pointer cast
  • stress-eigen-ops.cpp: cast const oouble value to comparison templated type
  • stress-inotify: use shim_assume_aligned for pointer cast
  • stress-inode-flags: use shim_assume_aligned for pointer cast
  • stress-icmp-flood: use shim_assume_aligned for pointer cast
  • stress-af-alg: use shim_assume_aligned for pointer cast
  • stress-verify: use shim_assume_aligned for pointer cast
  • stress-vm-splice: make buf and data uint64_t pointers
  • stress-mergesort: add alignment hints to 4 byte aligned data
  • stress-jpeg: add alignment hint on rgb data
  • stress-vnni: add alignment hints to 8 byte aligned data
  • stress-zero: use uint64_t pointer for uint64_t zero fast memory zero checking
  • stress-dev: add some alignment hints to dm_ioctl data
  • stress-bigheap: cast pointer to uintptr_t for one byte pointer addition
  • core-mwc: add shim_assume_aligned for aligned 32 bit pointer
  • stress-bigheap: use uintptr_t for all pointers
  • stress-apparmor: cast data to char *
  • core-mwc: stress_uint8rnd4: relax alignment requirements
  • core-hash: replace unaligned 32 bit value fetch with memcpy
  • Makefile: apparmor data generation should produce unsigned char values
  • core-numa: use correct %ld format specifier for long int values
  • stress-prctl: replace unsigned long with unsigned long int
  • core-shim: replace unsigned with unsigned int
  • core-shim: replace unsigned with unsigned int
  • stress-get: replace unsigned with unsigned int
  • stress-io-uring: replace unsigned with unsigned int
  • stress-monte-carlo: replace unsigned with unsigned int
  • stress-vdso: replace unsigned with unsigned int
  • stress-syscall: replace unsigned with unsigned int
  • stress-numa: replace unsigned with unsigned int
  • README.md: add another linux kernel commit link
  • stress-kvm: ignore return from KVM_SET_USER_MEMORY_REGION ioctls
  • stress-goto: remove redundant initialization of pointer labels
  • README.md: add notes on how to build with clang-scan for static analysis
  • core-helper: fix rotate on rnd2
  • core-sort: use target clones to improve performance of data shuffling
  • stress-ng: rename g_app_name to g_prog_name
  • stress-tmpfs: fix spelling mistake in comment
  • stress-sleep: fix spelling mistake in comment
  • stress-mmaprandom: fix spelling mistake in comment
  • stress-fractal: fix spelling mistake in comment
  • stress-filename: fix spelling mistake in comment
  • stress-ng: add new option --make-it-fail to enable error injection faults
  • stress-cpu: rename macros to uppercase
  • stress-ng.h: cast shift value to size_t in STESS_*BIT macros
  • stress-bad-altstack: remove void * cast on signal handler function
  • stress-crypt: replace string iniializers with array initializers
  • core-mwc: replace string iniializers with array initializers
  • core-helper: replace string iniializers with array initializers
  • stress-*: cast method functions to void * to clean up pedantic warnings
  • stress-matrix-3d: constify read only array args
  • stress-matrix: constify read only array args
  • stress-cpu-sched: use type appropriate mwc random functions
  • stress-vecwide: replace #if VERY_* with #if defined(VERY_*)
  • stress-vnni: add explicit type shortening cast
  • stress-sock: use type appropriate mwc random functions
  • stress-race-sched: add explicit type cast
  • stress-procfs: use type appropriate mwc random functions
  • stress-msg: add explicit type shortening cast
  • stress-mprotect: use type appropriate mwc random functions
  • stress-mmaptorture: use type appropriate mwc random functions
  • stress-mmaprandom: use type appropriate mwc random functions
  • stress-mmap: use type appropriate mwc random functions
  • stress-metamix: use type appropriate mwc random functions
  • stress-lockmix: use type appropriate mwc random functions
  • stress-led: use type appropriate mwc random functions
  • stress-zlib: add explicit type shortening cast
  • stress-x86cpuid: add explicit type shortening cast
  • stress-vm: add explicit type shortening cast
  • stress-verity: use type appropriate elements in hash_info_t
  • stress-radixsort: add explicit type shortening cast
  • stress-tlb-shootdown: add explicit type shortening cast
  • stress-opcode: add explicit type shortening cast
  • stress-msync: add explicit type shortening cast
  • stress-memthrash: add explicit type shortening cast
  • stress-ioport: add explicit type shortening cast
  • stress-filename: use type appropriate mwc random function
  • stress-fd-abuse: use type appropriate mwc random functions
  • stress-cpu: add explicit type shortening cast
  • stress-cpu-sched: use type appropriate mwc random functions
  • stress-chattr: add explicit type shortening cast
  • stress-bitops: add explicit type shortening cast
  • stress-bad-ioctl: add explicit type shortening cast
  • stress-atomic: add explicit type shortening cast
  • stress-af-alg: add explicit type shortening cast
  • core-interrupts: add explicit cast
  • stress-tree: clean up sone implicit float conversion warnings
  • stress-jpeg: clean up sone implicit float conversion warning
  • stress-fma: clean up sone implicit float conversion warning
  • stress-ctrig: clean up sone implicit float conversion warnings
  • stress-cpu: clean up sone implicit float conversion warnings
  • stress-judy: cast size_t to double before double addition
  • stress-workload: cast size_t to double before double multiplication
  • stress-vma: cast uint64_t to double for double division
  • stress-udp-flood: cast integers to double for double division
  • stress-tree: cast size_t to double for double division
  • stress-syscall: cast uint64_t to double for double comparison
  • stress-swap: cast uint64_t to double before double division
  • stress-sleep: cast integers to double before double math ops
  • stress-regex: cast uint64_t to double before double math ops
  • stress-rdrand: cast uint64_t to double before double math ops
  • stress-rawsock: cast ssize_t to double before double add
  • stress-rawdev: cast ssize_t to double before double addition
  • stress-pci: cast integers to double before double math ops
  • stress-opcode: cast integers to double before double division
  • stress-null: cast uint64_t to double before double division
  • stress-mmapfiles: cast size_t to double for divisor
  • stress-icmp-flood: cast uint64_t to double before double division
  • stress-flipflop: cast uint64_t to double before double division
  • stress-syscall: fix size_t cast on max calculation
  • stress-prime: fix type of t_start, should be double
  • stress-easy-opcode: remove double cast, keep types to size_t
  • stress-pipe: clean up some implicit cast warnings
  • stress-metamix: clean up some implicit cast warnings
  • stress-memfd: clean up some implicit cast warnings
  • stress-sysbadaddr: clean up some implicit cast warnings
  • stress-x86syscall: add missing pointer cast on memory allocation
  • stress-vnni: replace void * pointers with correct vector sized args
  • stress-vma: clean up some implicit cast warnings
  • stress-vm-splice: add missing pointer cast on memory allocation
  • stress-vm-segv: clean up some implicit cast warnings
  • stress-vm-rw: add missing pointer cast on memory allocation
  • stress-vma: clean up some implicit cast warnings
  • stress-vm: clean up some implicit cast warnings
  • stress-vecshuf: clean up some implicit cast warnings
  • stress-vdso: clean up some implicit cast warnings
  • stress-varyload: add missing pointer cast on memory allocation
  • stress-userfaultfd: add missing pointer cast on memory allocation
  • stress-tsearch: clean up some implicit cast warnings
  • stress-tlb-shootdown: add missing pointer cast on memory allocation
  • stress-syscall: add missing pointer cast on memory allocation
  • stress-swap: add missing pointer cast on memory allocation
  • stress-stream: add missing pointer cast on memory allocation
  • stress-splice: add missing pointer cast on memory allocation
  • stress-sockdiag: clean up some implicit cast warnings
  • stress-sock: add missing pointer cast on memory allocation
  • stress-skiplist: add missing pointer cast on memory allocation
  • stress-sigsegv: clean up some implicit cast warnings
  • stress-shm-sysv: clean up some implicit cast warnings
  • stress-shm: clean up some implicit cast warnings
  • stress-sem: clean up some implicit cast warnings
  • stress-seal: add missing pointer cast on memory allocation
  • stress-schedpolicy: clean up some implicit cast warnings
  • stress-rmap: clean up some implicit cast warnings
  • stress-rlimit: add missing pointer cast on memory allocation
  • stress-ring-pipe: add missing pointer cast on memory allocation
  • stress-revio: clean up some implicit cast warnings
  • stress-remap: clean up some implicit cast warnings
  • stress-rawdev: add missing pointer cast on memory allocation
  • stress-pseek: add missing pointer cast on memory allocation
  • stress-pkey: add missing pointer cast on memory allocation
  • stress-physmmap: add missing pointer cast on memory allocation
  • stress-pagemove: clean up some implicit cast warnings
  • stress-oom-pipe: clean up some implicit cast warnings
  • stress-numa: add missing pointer cast on memory allocation
  • stress-netlink-proc: clean up some implicit cast warnings
  • stress-mremap: add missing pointer cast on memory allocation
  • stress-mmaptorture: clean up some implicit cast warnings
  • stress-mmaprandom: clean up some implicit cast warnings
  • stress-mmaphuge: clean up some implicit cast warnings
  • stress-mmapfork: add missing pointer cast on memory allocation
  • stress-mmapfixed: add missing pointer cast on memory allocation
  • stress-mmapaddr: clean up some implicit cast warnings
  • stress-mlock: clean up some implicit cast warnings
  • stress-misaligned: add missing pointer cast on memory allocation
  • stress-min-nanosleep: add missing pointer cast on memory allocation
  • stress-mincore: add missing pointer cast on memory allocation
  • stress-memthrash: cast mem to same type as vmem
  • stress-memrate: unconstify start pointer
  • stress-memrate: clean up some implicit void * cast warnings
  • stress-io-uring: clean up some implicit cast warnings
  • stress-memfd: add missing pointer cast on memory allocation
  • stress-mcontend: cast pa->data to same type as mappings
  • stress-malloc: clean up some implicit cast warnings
  • stress-lsearch: clean up some implicit cast warnings
  • stress-lockbus: add explicit uint32_t * casting to assignments to shared_buffer
  • stress-jpeg: add missing pointer cast on memory allocation
  • stress-chroot: use correct cast on 2nd arg for call to do_chroot
  • stress-inode-flags: clean up some implicit cast warnings
  • stress-hdd: cast alloc_buf to uint8_t * to match assigned type
  • stress-handle: add missing pointer cast on memory allocation
  • stress-get: cast page_none to struct utsname * for uname call
  • stress-full: cast buffer to uint64_t * in stress_data_is_not_zero call
  • stress-fractal: add missing pointer cast on memory allocation
  • stress-flushcache: cast addr arg in shim_cacheflush to char * type
  • stress-flipflop: add missing pointer cast on memory allocation
  • stress-fibsearch: use correct cast for result assignment
  • stress-fd-fork: add missing pointer cast on memory allocation
  • stress-far-branch: explicitly cast ptr assignment using char *
  • stress-exec: clean up some implicit pointer cast issues
  • stress-epoll: cast page_none to truct epoll_event * for epoll_wait* calls
  • stress-dynlib: use correct pointer cast on assignment of ptr
  • stress-dup: add missing pointer cast on memory allocation
  • stress-dev: add missing pointer cast on memory allocation
  • README.md: update contributor list
  • stress-cyclic: use correct cast for stress_cyclic_state assignment
  • stress-clone: add missing pointer cast on memory allocation
  • stress-chattr: add missing pointer cast on memory allocation
  • stress-cachehammer: add missing pointer cast on memory allocation
  • stress-cache: cast addr arg in shim_cacheflush to char * type
  • stress-bsearch: use correct cast for result assignment
  • stress-brk: add missing pointer cast on memory allocation
  • stress-bigheap: use correct cast for last_ptr_end assignment
  • stress-bad-altstack: make stack_start void * to match caller type
  • stress-aiol: add missing pointer cast on pointer assignment
  • stress-af-alg: add correct struct cast to replace void pointer cast
  • stress-ng: add missing pointer cast on memory allocation
  • core-setting: add cast to remove implicit pointer cast
  • core-resctrl: add missing pointer cast on memory allocation
  • core-numa: add missing pointer cast on memory allocation
  • coe-mincore: add cast to remove implicit void pointer cast
  • core-madavise: add cast to remove implicit void pointer cast
  • core-log: add missing pointer cast on memory allocation
  • core-helper: add missing pointer cast on memory allocation
  • core-affinity: add missing pointer cast on memory allocation
  • stress-priv-instr: add NORETURN attribute to non-return function
  • stress-dnotify: rename private to private_data
  • stress-unlink: fix missing break causing fallthrough in switch statement
  • stress-zlib: remove redundant forward declaration of zlib_rand_data_methods
  • stress-wcs: remove redundant forward declaration of wcs_methods
  • stress-vm-addr: remove redundant forward declaration of vm_addr_methods
  • stress-tree: remove redundant forward declaration of stress_tree_methods
  • stress-memthrash: remove redundant forward declaration of memthash_methods
  • stress-matrix-3d: remove redundant forward declaration of matrix_3d_methods
  • stress-matrix: remove redundant forward declaration of matrix_methods
  • stress-list: remove redundant forward declaration of list_methods
  • stress-funcret: remove redundant forward declaration of stress_funcret_methods
  • stress-funccall: remove redundant forward declaration of stress_funccall_methods
  • stress-cpu: remove redundant forward declaration of stress_cpu_methods
  • stress-bitops: remove redundant forward declaration of bitops_methods
  • stress-sparsematrix: remove redundant forward declaration of sparsematrix_methods
  • stress-module: add missing default in switch statement
  • stress-af-alg: add missing default in switch statement
  • core-cpu-cache: add missing default in switch statement
  • stress-umount: add NORETURN attribute to non-return function
  • stress-softlockup: add NORETURN attribute to non-return function
  • stress-priv-instr: add NORETURN attribute to non-return function
  • stress-prio-inv: add NORETURN attribute to non-return function
  • stress-peterson: add NORETURN attribute to non-return function
  • stress-misaligned: add NORETURN attribute to non-return function
  • stress-far-branch: add NORETURN attribute to non-return function
  • stress-dekker: add NORETURN attribute to non-return function
  • stress-alarm: add NORETURN attribute to non-return function
  • stress-zombie: rename new to new_item
  • stress-rename: rename new to newbasename, old to oldbasename
  • stress-race-sched: rename new to new_item
  • stress-lockofd: rename new to new_item
  • stress-lockmix: rename new to new_item
  • stress-lockf: rename new to new_item
  • stress-locka: rename new to new_item
  • stress-inotify: rename private to private_data
  • stress-futex: rename try to tries
  • stress-forkheavy: rename new to new_item
  • stress-flipflip: rename new to new_val
  • stress-ng: rename class to opt_class
  • stress-clone: rename new to new_clone
  • stress-ng: rename class to opt_class
  • core-io-priority: rename class to ioprio_class
  • stress-sysbadaddr: add missing check for HAVE_SYS_UIO_H
  • stress-fd-abuse: add missing check for HAVE_SYS_UIO_H
  • README.md: update number of stressors
  • stress-umount: add missing HAVE_SYS_MOUNT_H check
  • stress-tsearch: add missing check for HAVE_SEARCH_H
  • stress-prio-inv: add HAVE_PTHREAD_H checks for PTHREAD constants
  • core-shim: add missing check for HAVE_POLL_H
  • stress-bad-altstack: replace case range with individual case statements
  • stress-malloc: add two more checks for malloc.h
  • stress-malloc: add checks for malloc.h
  • stress-bigheap: only use malloc_trim if malloc.h is available
  • stress-link: check for HAVE_LIBGEN_H when using dirname()
  • stress-varyload: remove duplicated declaration of variable now
  • stress-sigsegv: retry should reset expected_addr
  • stress-close: remove || 1 on #if defined check on HAVE_FACCESSAT
  • stress-radixsort: add radixsort detection
  • stress-mergesort: add mergesort detection
  • stress-heapsort: add heapsort detection
  • stress-lsearch: fix division by zero in comparisons metrics
  • stress-fibsearch: fix division by zero in comparisons metrics
  • stress-bsearch: fix division by zero in comparisons metrics
  • stress-qsort: fix division by zero in comparisons metrics
  • stress-insertionsort: fix division by zero in comparisons metrics
  • stress-mergesort: fix division by zero in comparisons metrics
  • stress-heapsort: fix division by zero in comparisons metrics
  • stress-bitonicsort: fix division by zero in comparisons metrics
  • stress-bubblesort: fix division by zero in comparisons metrics
  • stress-exec: add #ifdef guards on err_rm label
  • core-cpu-cache: voidify unused arg cache_line
  • stress-kvm: add RISC-V support
  • Manual: update ARM functionality for kvm stressor
  • CITATIONS.md: add a few more paper linki
  • stress-kvm: spin on MMIO exits 255 times before closing the VM
  • stress-kvm: track MMIO access exits for ARM
  • stress-kvm: add kvm support for 64 bit ARM
  • core-bitops: use/remove L suffix from integers where appropriate
  • core-opts: shuffle up OPT_FLAGS_* #defines, use up all the free bits
  • core-log: move log related flag options into core-log.h
  • stress-ng: make status summary table driven
  • stress-ng: move variable i to lower scope
  • core-opts: rename OPT_FLAGS_DEADLINE_GRUB to OPT_FLAGS_SCHED_RECLAIM
  • stress-zlib: fix 00ff method, should be filling with 8 bit and not 32 bit values
  • stress-exec: fix some resource leaks on error exit paths
  • stress-varyload: add an 'all' varyload-type to cycle through all varyload types
  • stress-get: exercise nslist system call being introduced in linux 6.19
  • CITATIONS.md: add another research paper reference
  • core-workload: add more fma ops (negative fma operations)
  • stress-varyload: voidify return from kill()
  • stress-varyload: order varyload #defines to match order of varyload types
  • stress-varyload: fix incorrect method and type being reported
  • stress-varyload: add brown noise load varying type
  • Manual: fix typo "trigangle" -> "triangle"
  • core-workload: pass stressor name to workload generator processes
  • stress-varyload: add a new varying load stressor
  • core-workload: move workload methods into core-workload.c
  • stress-bad-ioctl: remove lower bounds check on thread_index since it's unsigned
  • stress-shm-sysv: cast size_t to int for int only math ops
  • stress-prio-inv: cast i to int for integer only math ops
  • stress-min-nanosleep: explicitly cast max_nsec assignments to uint32_t
  • stress-metamix: use uint32_t type for mwc seed arg math ops
  • stress-memfd: use stress_mwcsizemodn for size_t random value
  • stress-madvise: use stress_mwcsizemodn for size_t random value
  • stress-iomix: use correct void return type cast for readahead
  • stress-io-uring: cast sqe->len type assignment to correct type
  • stress-icache: use correct void return cast for shim_getcpu() calls
  • stress-icache: cast size to int for shim_cacheflush calls
  • stress-flushcache: cast size to int for shim_cacheflush calls
  • stress-filename: use stress_mwcsizemodn for size_t random value
  • stress-filerace: use correct void return type cast for readahead
  • stress-fibsearch: offset should match other ssize_t types
  • stress-fd-race: use size_t types for array sizes
  • stress-far-branch: use appropriately sized casts and mwcmodn calls
  • stress-dev: cast info->size assignment to correct type
  • stress-cpu-sched: cast time to secs for simpler computation
  • stress-ng.h: make fractal row a uint32_t
  • stress-cgroup: use correct read return void cast
  • stress-cachehammer: add explicit uint32_t cast
  • core-thrash: add explicit cast on node to match assigned array element type
  • stress-bad-ioctl: make array index thread_index size_t
  • core-shim: add missing int cast on syscall return
  • core-processes: add explicit int cast on string length
  • core-parse-ops: len should be size_t and not int
  • core-mwc: add missing explicit uint32_t cast
  • core-mmap: add missing explicit uint32_t cast
  • core-hash: add missing explicit cast on len
  • stress-memthrash: use stress_mwcsizemodn for size_t random values
  • stress-bitops: use 32 bit unsigned instead of ULL for bitop constants
  • core-mwc.h: add size_t variant of mwcmodn random number generator
  • core-mwc: move OPTIMIZE3 attribute on a couple of functions
  • stress-prctl: remove incorrect cast on prctl call return
  • stress-radixsort: cast return on radix_strlen()
  • stress-poll: add missing explicit type casts
  • stress-pseek: fix truncated int conversions, use wider types
  • stress-randlist: use uint32_t for randlist size
  • stress-rmap: pass child_index as size_t to avoid truncation
  • stress-procfs: cast atol return to uint32_t
  • stress-numa: cast to uint32_t before passing to mwc32modn
  • stress-monte-carlo: add in missing assignment casts
  • stress-mmaprandom: add missing cast from return from mwc8modn
  • stress-mprotect: add missing cast from return from mwc8modn
  • stress-acl: cast n to uint32_t before passing to mwc32modn
  • stress-syscall: cast syscall returns to correct type
  • stress-sysbadaddr: cast syscall returns to correct type
  • stress-statmount: cast syscall return to statemount to int
  • stress-sparsematrix: cat judy_get to return uint32_t
  • stress-sigpipe: use ssize_t for write return value
  • stress-skiplist: limit skiplist items to uint32_t
  • stress-schedmix: voidify clock_t type
  • core-helper: cast uint64_t to uint32_t before ~ op
  • stress-tree: use uint32_t for tree size rather than size_t
  • stress-zlib: use 32 bit unsigned ints for indexing
  • stress-[quota|syscall]: clean up negative integer shift warnings
  • stress-veccmp: shift uint128_t value rather than int128_t value
  • stress-lockbus: fix build failure on non-x86 systems
  • Add in missing defaults in switch statements
  • core-builtin: add shim complex macros for explicit type conversions
  • stress-tree: remove extraneous ; after statements
  • stress-mmaprandom: remove extraneous ; after statements
  • stress-cyclic: remove ; after end of function
  • stress-io-uring: move declarations to before statements
  • core-mmap: used shim_assume_aligned for known page aligned data
  • stress-sockfd: remove UNLIKELY() macro that to remove directive inside macro
  • stress-dev: replace directive inside macro args with 2 variants of ioctl call
  • stress-dev: replace directive inside macro args with CDSC_FORMAT macro
  • stress-zero: move declarations to before statements
  • stress-stream: move declarations to before statements
  • stress-sleep: move declarations to before statements
  • stress-seccomp: move declarations to before statements
  • stress-memrate: move declarations to before statements
  • stress-lockbus: move declarations to before statements
  • stress-io-uring: move declarations to before statements
  • stress-efivar: move declarations to before statements
  • stress-dev: move declarations to before statements
  • core-perf: move declarations to before statements
  • stress-secretmem: perform addition before cast to void
  • stress-vm: remove extraneous ; after while (0) in macro
  • stress-prefetch: add do .. while (0) wrapper to macro
  • stress-judy: remove extraneous semicolons
  • stress-fd-race: remove extraneous semicolon after }
  • stress-sparsematrix: remove extraneous semicolons
  • stress-waitcpu: make array stress_waitcpu_method static
  • stress-vecfp: make stress_vecfp_metrics static
  • stress-trig: make stress_trig_methods static
  • stress-sigxcpu: make sigxcpu_args static
  • stress-prefetch: make prefetch_methods array static
  • stress-powmath: make sreess_powmath_metrics static
  • stress-ng: include core-put.h for g_put_val definition
  • stress-logmath: make sreess_logmath_metrics static
  • stress-hyperbolic: make stress_hyperbolic_metrics static
  • stress-fma: make function arrays static const
  • stress-flipflop: fix typo, ALIGNED64 should be ALIGN64
  • stress-expmath: make stress_expmath_metrics static
  • stress-ctrig: make stress_ctrig_metrics static
  • stress-chyperbolic: make stress_chyberbolic_metrics static
  • stress-bitops: make metrics static
  • stress-besselmath: make stress_besselmath_metrics static
  • stress-acl: add missing default case in switch statement
  • stress-ng: add missing default case in switch statement
  • stress-ng: remove g_ prefix of non-globals, make them static
  • core-ftrace: remove ; after RB_ macros
  • core-signal: add NORETURN attribute to non-returning functions
  • core-signal: add missing default case
  • core-log: declare pr_msg_buf as static
  • core-helper: add default case in switch statement
  • core-affinity: explicitly cast calloc size arg to size_t
  • core-cpu: replace , with ; in register assignments, use do while on macro
  • stress-ng.h: make val arg in stress_bogo_add_lock uint64_t
  • Makefile: put apparmor data into a headerfile that gets included into stress-apparmor.c
  • core-, stress-: fix various printf format specifiers
  • core-config-check: avoid gcc breakage when using -march=znver3 -O3 -funroll-loops
  • stress-affinity: print info about sched_getaffinity not being verified
  • stress-ng: pluralise "starting stressor" message only with > 1 stressor
  • stress-memrate: fix macro check typo, ILP2 should be ILP32
  • Makefile: fix disabling of -fmodulo-sched for s390 systems

Full Changelog: V0.19.06...V0.20.00

Don't miss a new stress-ng release

NewReleases is sending notifications on new releases.