github ColinIanKing/stress-ng V0.18.11

2 days ago

stress-ng V0.18.11 "optimized OS oppressor"

This release comes with several hundred branch hints for improved
if/else branching, many bug fixes and porting improvements. Also
a new mmaptoture stressor has been added to hammer page related
system calls.

New Stressors

  • mmaptorture - memory mapping torture stressor

New Options

  • --intmath-fast - use fast integer types for intmath stressor
  • --pci-ops-rate - throttle PCI stressor bogo-ops rate

Changelog:

  • core-helper: add check for Cygwin
  • stress-zombie: repeat zombie state checks for more robust checking
  • stress-af-alg: ignore errno = 0 send* failures
  • stress-mcontend: ensure mcontend_numa is defaulted to false
  • stress-pci: make t_delta non-clobberable
  • stress-mmaptorture: cat mmap returns to uint8_t *
  • stress-zombie: add sched_yield before zombie Z state check
  • stress-mmaptorture: voidify function argument mmaptorture_msync
  • stress-vm: add HAVE_LINUX_MEMPOLICY_H check when using numa.mask
  • stress-tun: perform addition before casting to uint8_t
  • core-thrash: make begin/end unsigned to match %x sscanf format specifier
  • stress-munmap: make major and minor unsigned ints to match scanf %x specifiers
  • core-numa: avoid pointer arithmetic on potentially NULL buffer
  • core-numa: don't dereference numa_mask before it's null checked
  • core-parse-opts: ensure format specifier and type match
  • stress-mmaptorture: only declare variable mypid when required
  • stress-zlib: call deflateEnd on error return path
  • stress-tsearch: avoid division by zero
  • stress-access: fix array termination comparison
  • workload: avoid division by zero when sum is 0.0
  • stress-vm: free context.numa_mask on error return path
  • stress-mmaptorture: voidify return from stress_get_setting
  • stress-intmath: load init values for fast ints from a fast int array
  • test-intmath: add a --intmath-fast option to exercise int_fast*_t types
  • README.md: add a couple more references to papers
  • core-memrate: add --memrate-method to specify read/write method
  • stress-memrate: allow zero values of memrate-rd-mbs and memrate-wr-mbs
  • stress-sysbadaddr: use shim_madvise for madvise calls
  • stress-tlb-shootdown: use shim_madvise for madvise calls
  • stress-pagemove: fix mprotect calls
  • core-shim: add shim macros for madvise advice
  • stress-mmaptorture: #ifdef around madvise, fix QNX build
  • kernel-coverage: add html to text conversion
  • kernel-coverage: add --branch-coverage coverage option
  • stress-*: handle ENOSUP errors on timer_create more graciously
  • stress-mmaptorture: populate mapping file and read mapping
  • stress-mmaptorture: rename temp strings name to avoid name shadowing
  • stress-ng.h: use 64 bit LFS
  • stress-mmaptorture: don't map more than mmaptoture-bytes
  • stress-mmaptorture: add some more torture metrics
  • stress-mmaptorture: use shm_open and shm_unlink for anon mappings
  • stress-close, stress-shm: check for SHM_OPEN and SHM_UNLINK
  • test: add shm-open and shm-unlink build time config checks
  • stress-mmaptorture: retry if mmap's fail rather than continuing
  • stress-mmaphuge: fix inverted MAP_FAILED check on madvise calls
  • stress-mmaptorture: add mlockall/munlockall in child process
  • stress-mmaptorture: bump MMAP_SIZE_MAP from 4 to 512 pages
  • stress-mmaptorture: remove debug
  • stress-mmaptorture: name each mmap'd page to create more VMAs
  • stress-mmaptorture: where possible, set vma name
  • core-helper: fix typo in comment: hash -> has
  • Manual: add mseal notes in mmaptruncate description
  • stress-mmaptorture: mseal a page in child process, fix munmap address
  • test: add check for setproctitle_init
  • test/test-setproctitle: remove check for setproctitle_init on BSD systems
  • stress-mmaptorture: increase size default to 256MB, add random ftruncate
  • kernel-coverage: add mmaptorture options
  • stress-mmaptorture: add --mmaptorture-msync option to change % rate of msyncs
  • stress-mmaptorture: add mmap stats and metrics
  • stress-mmaptorture: mmap onto an existing virt address with MAP_NOREPLACE
  • stress-mmaptorture: add MAP_FIXED re-map on just unmapped page
  • stress-mmaptorture: make variables nonclobberable due to longjmp
  • Dockerfile: make static stress-ng image, disable GPU stressor
  • github workflows: enable more arches now we have a Debian build
  • stress-mmaptorture: madvise don't need before unmapping pages in child
  • stress-mmaptorture: make pid noclobberable
  • github workflows: remove printenv
  • stress-mmaptorture: randomly fork child to dup and remove mappings
  • stress-mmaptorture: add random swap outs on pages
  • github workflows: enable more arches now we have a Debian build
  • Dockerfile: build images on Debian
  • Makefile: enable verbose build for github docker builds
  • README.md: add another kernel issue found with stress-ng
  • stress-mmaptorture: cater for systems that don't support msync (e.g. Minix)
  • Revert "stress-hdd: make stress_hdd_opts_t field advise build dependant"
  • stress-mmaptorture: cater for systems without MAP_NONBLOCK
  • stress-sockpair: unconstify fds arg, gcc 4.8.2 complains about this
  • stress-mmaptorture: reduce scope on newptr
  • stress-mmaptorture: move #endif
  • stress-mmaptorture: move } outside #ifdef block
  • stress-madvise: fix build issues with HAVE_MADVISE undefined
  • stress-mmaptorture: add --mmaptorture-bytes option
  • stress-mmaptorture: add remap_file_pages call where available
  • stress-mmaptorture: rework msync helper, msync pages randomly
  • core-out-of-memory: start timeout from first waitpid exit
  • stress-mmaptorture: add stressor that tortures mmap'd memory
  • Makefile: add some Intel icx compiler optimization flags
  • stress-pidfd: exercise PIDFD_SELF_THREAD and PIDFD_SELF_THREAD* fds
  • README.md: remove ] in link
  • README.md: add kernel issue and recent paper on stress-ng
  • core-config-check: check /sys/devices/system/cpu/cpufreq/boost is set to 1
  • core-ignite-cpu: enable cpu boost
  • stress-ng.h: silence PCC build warnings on cold not being supported
  • core-, stress-: add LIKELY/UNLIKELY hints for stress_continue_flag
  • core-, stress-: make various pointers and variables const
  • stress-shm: remove empty line
  • core-helper: add stress_random_small_sleep for small pthread startup delays
  • stress-vma: reduce scope of variable ret
  • stress-tee: reduce scope of variable ret
  • stress-prime: simplify mapping of prime methods
  • stress-mincore: initialize pointers with NULL instead of zero
  • stress-ipsec-mb: move ipsec_stats_t where it is required
  • stress-cache: add missing checks for HAVE_SCHED_SETAFFINITY
  • stress-hdd: make stress_hdd_opts_t field advise build dependant
  • stress-goto: simplify the goto direction mechanism
  • stress-funcret: compare data in struct rather than whole struct
  • stress-filename: simplify mapping of filename opts in method
  • stress-fd-race: remove redundant pointer fds
  • stress-fd-race: reduce scope of variables j and tmp, make them registers too
  • stress-exec: fix index -> method mapping on methods
  • stress-copy-file: cast -1 to shim_off64_t to be pedantic
  • core-shim: fix incorrect signed type for shim_off64_t
  • stress-bitops: reduce scope of buf
  • stress-bad-ioctl: remove need ioctl_cmd_method field, use index instead
  • core-thermal-zone: reduce scope of pointer name
  • core-affinity: constify pointers d and tmpptr, reduce scope of tmpptr
  • core-ignite-cpu: reduce scope of variable retry
  • core-perf: rename pointer l to label to make it more readable
  • README.md: add another research paper link
  • core-affinity: add checks for HAVE_SCHED_SETAFFINITY

Don't miss a new stress-ng release

NewReleases is sending notifications on new releases.