github ColinIanKing/stress-ng V0.21.02
stress-ng V0.21.02 "proficient process pulverizer"

5 hours ago

New stressors

  • eth-sniff - simple ethernet packet sniffer stressor

Notable Bug fixes

  • stress-rofs: fix Cygwin SIGSEGV issue
  • stress-str: fix index underflow on strncmp
  • stress-ng: fix ionice-level upper limit to 7

New options

  • --hdd-sleep - specify number of seconds between read/write cycles
  • --numacopy-affinity - set CPU affinity relative to NUMA nodes
  • --pipe-readers - specify number of pipe reader processes for pipe stressor
  • --pipe-writers - specify number of pipe writer processes for pipe stressor

Notable new features

  • internal re-working of option parsing

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
  • Noura El Allam

Detailed Changelog

Liew Rui Yan

  • stress-hdd: introduce '--hdd-sleep' option

Colin Ian King

  • debian/changelog: update changelog
  • Makefile: bump version
  • debian/control: bump standards version to 4.7.4.1
  • CITATIONS.md: Add another research paper link
  • stress-ng: don't use NULL space for end of string break
  • core-opts: ensure *flag option field is initialized to NULL and not zero
  • Manual: Fix spelling mistake "muliple" -> "multiple"
  • stress-utime: add UL suffix for the unsigned long long constant
  • stress-utime: add ULL suffix for the unsigned long long constant
  • stress-full: add ULL suffix for the unsigned long long constant
  • stress-atomic: add ULL suffix for the unsigned long long constant
  • Manual: fix tbl formatting close T}
  • stress-workload: make array stress_workload_threads static
  • stress-vm-rw: assign pointer with NULL instead of zero
  • stress-syscall: zero ctx with memset
  • stress-splice: use NULL for null pointer arg instead of zero
  • stress-sockabuse: use NULL for null pointer arg instead of zero
  • stress-sem-sysv: initialize pointer with NULL instead of zero
  • stress-sctp: use NULL for null pointer arg instead of zero
  • stress-ring-pipe: use NULL for null pointer arg instead of zero
  • stress-reboot: use NULL for null pointer arg instead of zero
  • stress-quota: use NULL for null pointer arg instead of zero
  • stress-mremap: initialize pointer with NULL instead of zero
  • stress-mmaprandom: initialize pointer with NULL instead of zero
  • stress-madvise: use NULL for null pointer arg instead of zero
  • stress-insertionsort: initialize pointer with NULL instead of zero
  • stress-fd-abuse: use NULL for null pointer arg instead of zero
  • stress-aio: assign pointer with NULL instead of zero
  • stress-af-alg: use NULL for null pointer arg instead of zero
  • core-time: add missing CONST to function prototype
  • core-signal: add missing CONST to function prototype
  • core-sched: add missing CONST to function prototype
  • core-prime: add missing CONST to function prototype
  • core-parse-opts: add missing CONST to function prototype
  • core-filesystem: add missing CONST to function prototypes
  • core-memory.h: add missing CONST to function prototypes
  • core-net: add missing CONST to function prototypes
  • core-helpr: align function prototypes
  • core-hash: remove PURE annotation from hash functions
  • CITATIONS.md: add two more research paper references
  • Manual: fix typo
  • stress-numacopy: ensure cpus is free'd on error return path
  • stress-numacopy: remove redundant initialization of cpu_begin
  • core-stack: don't forward declare __stack_chk_fail for Cygwin
  • stress-aio: cater for Cygwin O_SYNC and O_DSYNC being the same
  • stress-numa: minor change to NUMA info message
  • stress-schedpolicy: avoid using clamping if not supported
  • stress-sigill: allow si_code 128 for loong64 etc
  • stress-open: use PRIu64 to print uint64_t open_max
  • core-stack: don't forward declare __stack_chk_fail for NetBSD
  • core-filesystem: use d_name local to reduce d-> dereferences
  • CITATIONS.md: add two more paper references
  • kernel-covergae: add --numacopy-affinity options
  • kernel-coverage: add pipe readers/writers options
  • stress-pipe: add --pipe-readers and --pipe-writers option
  • stress-pipe: replace hard coded pipe min/max sizes with run-time min/max pipe sizes
  • stress-pipe: check --pipe-size using system min/max pipe sizes
  • stress-pipe: check --pipe-data-size using system min/max pipe sizes
  • stress-numacopy: add --numacopy-affinity option
  • stress-numacopy: fix copyright
  • stress-ng: fix 0 and -ve options for all, seq, random, with, permute options
  • stress-ng: stress-ng: move "all", "seq", "ranom", "with", "permute" option into main_opts
  • README.md: add another kernel bug reference
  • stress-ng: move "max-fd" option into main_opts
  • core-helper: voidify unused arg
  • CITATIONS.md: Add another research paper link
  • stress-ng: move "oom-avoid-bytes" option into main_opts
  • core-setting: allow duplicated setting to update previous value
  • core-thrash: constify arg max_maps
  • core-smart: fix typo "CBD_RESVERVED" -> "CBD_RESERVED"
  • core-hash: make stress_hash_murmur_32_scramble param k register
  • stress-vdso: rename arg dup to sym to avoid name shadowing with function dup
  • stress-schedpolicy: rename variable syscall to syscall_name
  • stress-schedpolicy: remove redundant if statement on use_clamp
  • stress-mmaprandom: remove empty line
  • core-sched: reduce scope of variable i
  • stress-sysinfo: remove duplicated ret < 0 check
  • stress-ng: allow --random option to take % number of CPUs
  • core-net: increase port spacing between stressors from 256 to 1024
  • stress-sockmany: handle ECONNREFUSED gracefully
  • stress-sock: retry bind on EADDRINUSE failure
  • stress-sockmany: retry bind on EADDRINUSE failure
  • core-cpu: find largest number of TLBs for all CPUs
  • Manual: Add note that --autogroup is a Linux only option
  • disable clamping if sched_setattr does not support it for SCHED_OTHER and SCHED_BATCH
  • stress-schedpolicy: fix missing space in error messsage
  • stress-schedpolicy: disable clamping if sched_setattr does not support it
  • stress-schedmix: skip over unavailable sched policies
  • stress-schedpolicy: skip over unavailble sched policies
  • stress-apparmor: ignore EEXIST errors
  • stress-ng: move "class" option into main_opts
  • stress-wcs: align wcs with str stressor comparisons
  • stress-str: fix index underflow on strncmp
  • stress-ng: remove some empty lines
  • stress-ng: move "resctrl" option into main_opts
  • stress-ng: minor cleanup
  • stress-ng: move "taskset" option into main_opts
  • stress-ng: fix ionice-level upper limit to 7
  • stress-ng: move "sched-prio" option into main_opts
  • stress-ng: move "sched" option into main_opts
  • stress-wcs: ensure str1 and str2 never contain the same characters
  • stress-str: ensure str1 and str2 never contain the same characters
  • stress-atomic: Fix typo in comment "current" -> "currently"
  • core-numa: fix stress_set_mbind for non-Linux systems
  • stress-timermix: ignore itimer EINVALs for Cygwin
  • stress-ng: only call stress_io_priority_ionice_class_get if optstr is set
  • CITATIONS.md: add two more papers, referesh a link
  • stress-ng: move "ionice-class" and "ionice-level" options into main_opts
  • CITATIONS.md: Add another paper reference
  • stress-ng: move "timeout option into main_opts
  • stress-ng: move "rlimit-*" option into main_opts
  • stress-ng: move "vmstat-units" option into main_opts
  • stress-ng: move "mbind" option into main_opts
  • stress-ng: move vmstat periodic option into main_opts
  • stress-ng: move "seed" option into main_opts
  • stress-ng: move OPT_sched_reclaim to opt_flags options
  • stress-ng: move "quiet" option into main_opts
  • stress-ng: move "no-madvise" option into main_opts
  • stress-ng: move "timer-slack" option into main_opts
  • stress-ng: stress-ng: move "sched-deadline" and "sched-period" options into main_opts
  • core-parse-opts: check for sscanf errno, e.g. ERANGE overflows
  • stress-ng: add upper limit to sched-runtime
  • stress-ng: move "sched-runtime" option into main_opts
  • stress-ng: move "cache-size" option into main_opts
  • stress-ng: fix typo: "compact-mempory" -> "compact-memory"
  • stress-ng: move simple global opts into a main_opts array
  • stress-sysinval: remove variable j
  • stress-sysinval: uncomment pause()
  • stress-sysinval: use uint32_t for arg bit masks
  • stress-sysinval: use MAX_SYSCALL_ARGS for syscall arguments limit
  • stress-sysinval: generalize ARG_PTR to use 4 different page protections
  • stress-sysinval: constify and reformat various arrays
  • stress-tlb-numa: remove redundant assignment to ptr
  • stress-sock: use a run time bad fd rather than ~0 for an invalid fd
  • core-filesystem: improve stress_fs_bad_fd_get()
  • core-signal: don't kill all stressors if a stressor's child terminates
  • stress-eth-sniff: ethernet packet sniffer
  • stress-rofs: use ENOTSUP instead of EOPNOTSUPP for listxattr error check
  • stress-rofs: fix Cygwin SIGSEGV issue
  • stress-open: ensure errno from open is returned correctly
  • stress/core: use non-IANA registered ports 49152..65535 for stressor defaults
  • stress-sockmany: exercise setsockopt TCP_USER_TIMEOUT
  • stress-sockmany: add setsockopt TCP_SYNCNT
  • core-interrupts: add missing emd of string check

Don't miss a new stress-ng release

NewReleases is sending notifications on new releases.