* Sun Apr 29 2018 mardnh@gmx.de
- Update to version 0.09.26
* Makefile: bump version
* Remove TARGET_CLONES on some functions that break on gcc 7.2 on
kFreeBSD
* Use nanosleep where possible for usleep, add nanosleep check
* stress-dev: move wfds to select local scope to fix NetBSD warning
* stress-dev: NetBSD hangs on select on some devices, so disable this
* stress-dev: pass child failure status to parent
* stress-dev: fix warning on char being passed to isdigit on NetBSD
* stress-dev: NetBSD uses different sorting prototype
* stress-sigio: don't do fcntl F_SETOWN for minix, it always fails
* stress-sigio: fix hang in *BSD systems when we SIGALRM not handled
* stress-sigio: exit in sighandler to force earlier termination
* stress-sigio: add yield points to break out of heavy looping
* shim: cater for systems that don't have mlock
* stress-utime: check HAVE_FUTIMENS for declaration of ts
* test/test-mq-posix: mq_* is defined but not implemented on kfreeBSD
* test/test-syncfs: syncfs is defined but not implemented on kfreeBSD
* stress-dirdeep: use HAVE_FUTIMENS
* Makefile.comfig: fix typo in funtimens
* test/test-futimens: check also for UTIME_NOW and UTIME_OMIT
* Add build time check for futimens
* test/test-dup3: trigger failure with FreeBSD kernel
* stress-zlib: fix longjmp clobber warnings on data
* stress-revio: make alloc_buf void * to avoid type punning warnings
on gcc 3.4.3
* stress-hdd: make alloc_buf void * to avoid type punning warnings on
gcc 3.4.3
* Add shim wrapper for mlock for Solaris compat reasons
* stress-fanotify: peek into number of bytes to be read with FIONREAD
* stress-crypt: include <crypt.h> if on Solaris
* stress-enosys: avoid warning on unused procs on Solaris
* stress-sysbadaddr.c: avoid warning on unused procs on Solaris
* stress-sysbadaddr.c: include termios.h for TCGETS
* stress-vm-segv: remove debug, it is spamming the output
* stress-sysbadaddr: don't use ustat if it is not defined
* stress-sysbadaddr: ensure we have PTRACE_GETREGS defined
* Workaround failing pthread spinlock on DragonFly BSD
* stress-dev: add /dev/null nop to have at least one item in table
* stress-wait: use HAVE_WAITID to check for waitid() call
* stress-sysbadaddr + Makefile.config: Add HAVE_WAITID check
* stress-sysbadaddr: fix conditional build on bad_clock_gettime
* stress-sysbadaddr: use mincore shim to fix build on GNU/Hurd
* stress-sysbadaddr: ensure TCGETS is defined
* stress-file-ioctl: fix a file handle leak
* Add sysbadaddr stressor to exercise system call bad address handling
* stress-mmap: use new MAP_FIXED_NOREPLACE flag introduced in 4.17
* stress-clock: add CLOCK_MONOTONIC_ACTIVE that was added to Linux 4.17
* stress-oom-pipe: Explicitly drop capabilities to make root spawned
processes more OOMable
* Explicitly drop capabilities to make root spawned processes more
OOMable
* helper: remove some blank lines
* stress-dev: add linux stress for /dev/{mem|kmem|port|kmsg}
* stress-vm-segv: don't assume max size of size_t
* stress-vm-segv: ensure we force SEGVs by invalidating I$ cache
* Add --vm-segv option to force SEGVs on unmapping
* stress-fork: make it more OOMable
* stress-clone: make clone'd procs OOMable
* make main process less likely to be OOM-able
* snapcraft: add libsctp-dev
* stress-tree: rename BSD trees to fix build error on OpenBSD 6.3
* Thu Apr 19 2018 mardnh@gmx.de
- Update to version 0.09.25
* Makefile: bump version
* stress-ng: don't enable TARGET_CLONES for kFreeBSD
* stress-enosys: avoid calling vhangup with upper bits set
* Wed Apr 11 2018 mardnh@gmx.de
- Update to version 0.09.24
* Makefile: bump version
* Misc small fixes detected by static analysis (LP: #1762848)
* stress-fcntl: use | rather than |= to get new_flags
* stress-tmpfs: clear mnts and check if mnts[i] is null
* stress-sync-file: fix incorrect placement of break statement
* stress-af-alkg: check for more NULL cmsg pointers
* stress-pipe: ensure no uninitialized data is written to pipe
* stress-fcntl: use | rather than |= to get new_flags
* test/test-posix-memalign.c: free allocated buffer
* test/test-fanotify.c: free buffer
* stress-mmapfailed: check for null return from mremap
* Wed Mar 28 2018 mardnh@gmx.de
- Update to version 0.09.23
* Makefile: bump version
* cache: revert using shim_str* funcs (LP: #1759515)
Using the shim_* str functions breaks the cache globbing paths,
so for now, revert these.
* Sun Mar 25 2018 mardnh@gmx.de
- Update to version 0.09.22
* Makefile: bump version
* stress-mmap: add extra checking on fd, don't do I/O on -ve fd
* out-of-memory: ensure buffer is null-terminated
* out-of-memory: move non-linux variant of process_oomed
* out-of-memory: detect if a stressor was killed by the OOM killer and
don't mark it as a strict stressor failure (LP: #1755245)
* stress-mmap: add missing I/O to/from mmap'd buffer on mmap'd address
* stress-ng.h: fix missing perf option (LP: #1758383)
* Thu Mar 22 2018 mardnh@gmx.de
- Update to version 0.09.21
* Makefile: bump version
* stress-dir: clean up warning on args on DragonFly build
* stress-dir: skip the sanitycheck on DragonFly BSD
* stress-rawdev: reduce the scope of 'ret'
* stress-mmapaddr: reduce the scope of 'ret'
* stress-mcontend: reduce the scope of variable 'cpu'
* stress-matrix: remove redundant initialization of a to NULL
* stress-filename: reduce scope of variable d
* stress-enosys: declare variable lim when only required
* stress-dev: make 'ret' local to ioctl test block scope
* Makefile.config: fix epoll_create build checking
* stress-ioprio: check for systems that don't support pwritev
* shim: overlooked another fallocate glibc call to fixup
* shim: use syscall to call fallocate, older glibc may not support it
* perf: cater for systems that don't support linux/perf_event.h
* stress-urandom: workaround __u32 definitions in pre-2.6.29 kernels
* stress-epoll: detect if epoll_create1 exists
* stress-netlink-proc: don't use PROC_EVENT_SID in kernels earlier
than 2.6.31
* Add detection for linux/fiemap.h
* test/test-librt.c: reorder functions in alphabetical order
* stress-dirdeep: use shim_strlcat instead of strlcat
* Replace strncat with safer strlcat
* Add shim version of strlcat
* Replace strncpy with safer strlcpy
* Add shim and implementation of shim_strlcpy()
* stress-dev: ensure we don't have a non-null terminated filename
* stress-dev: don't sync on fd when open failed
* stress-ng.h: check for spin lock failure
* stress-dev: add #ifdef around stress_dev_tty
* stress-dev: add #ifdef around struct termios tios declaration
* stress-dev: remove gettid, only used during debug on linux
* stress-dev: remove debug
* stress-dev: randomly mix up device path scanning, limit to max 3 of
same device
* stress-dev: add missing /dev/random ioctl handling
* stress-dev: add some Linux SCSI ioctls for block devices
* stress-file-ioctl: fix missing #if / #endif around shim_fallocate
* stress-procfs: mix up path name order to get a better spread
* stress-sysfs: mix up path name order to get a better spread
* stress-xattr: add missing setxattr and lsetxattr system calls
* stress-utime: add NULL utimes time and non-nul utime parameters
* stress-dir: add missing readdir() exercising
* stress-file-ioctl: add missing FIDEDUPERANGE ioctl
* stress-file-ioctl: exercise FS_IOC_RESVSP64
* stress-fcntl: ensure F_OWNER_GID is being exercised
* stress-get: add Linux lookup_dcookie call
* stress-dev: exercise tty ioctls on devices
* stress-file-ioctl: disable FIFREEZE/FITHAW filesystem ioctls
* test/test-ustat.c: ustat will fail on __arch64__, so don't enable it
* stress-enosys: add extra paranoid check on reboot syscall check
* stress-enosys: ensure all known syscalls are added to hash
table (LP: #1755358)
* Makefile.config: add -Wextra build check on ustat
* Wed Mar 14 2018 mardnh@gmx.de
- Update to version 0.09.20
* Makefile: bump version
* stress-procfs: remove debug (LP: #1755552)
* stress-madvise: fix build issue for HPPA (LP: #1755551)
* stress-dev: add missing FIBMAP to block dev stressor
* Fix missing stressors in mini-help and re-order some
* Remove duplicated "futex" stressor from stressor table
* Mon Mar 12 2018 mardnh@gmx.de
- Update to version 0.09.19
* Makefile: bump version
* stress-cyclic: fix typo in time measurement, us should be ns
* stress-enosys: add checks on RLIMIT_* macros
* bump target_clones attribute to gcc 5.5
* stress-mcontend: don't msync if it is not available
* Disable target_clones attribute on GNU_HURD
* stress-procfs: make stressor more stressful, less thread spawning
* stress-enosys: wider sanity checks for fork/vfork/cloning (LP:#1753705)
* Forgot to add test/test-personality.c
* stress-enosys: try to limit fork run-away (LP:#1753705)
* Add personality autoconfiguration detection
* stress-mcontend: fix non-Linux build
* stress-cpu: fix clang build error
* Add new mcontend memory contention stressor
* stress-af-algo: add a couple more crypto module tests
* Add GCC-5 target_clones attribute
* stressors: use the new cpu_is_x86 helper
* Add cpu.c and cpu_is_x86 cpu detection helper
* Thu Mar 01 2018 mardnh@gmx.de
- Update to version 0.09.18
* Makefile: bump version
* stress-sysfs: sysfs_path does not need to be marked as volatile
* stress-flock: make function stress_flock_child static
* stress-dev: pass thread data using pthread_args_t context
* stress-dev: rename ret to wret to fix variable shadowing
* stress-seal: don't redefine MFD_ALLOW_SEALING
* test/test-ustat: fail for GNU/HURD, it is not implemented
* helper: use sz only in scope that requires it
* stress-fcntl: fix build error in do_fcntl
* Pass SHIM_PTHREAD_PROCESS_SHARED rather than 0 as flags arg
to shim spin lock init
* stress-dev: Fix compat shim build warnings on OS X
* stress-dev: use abstracted pthread spinlock for portability sake
* syscalls.txt: add getpagesize
* stress-get: use getpagesize if it is available
* helper: use getpagesize() for legacy systems without sysconf
* Add automatic build getpagesize detection
* stress-exec: where possible, use execveat() as well as execve()
* syscalls.txt: add epoll_create and epoll_pwait to syscall table
* stress-epoll: use epoll_create and epoll_pwait to get more coverage
* stress-sock: use accept4 to add more system call coverage
* stress-dev: add some block specific ioctls
* stress-dev: add more seeking and shared memory mapping
* syscalls: add ustat
* stress-sysinfo: add legacy ustat() system call
* Update syscalls log
* stress-poll: add ppoll and pselect calls to add more stress coverage
* stress-dev: make stressor more stressful, less thread spawning
* stress-sysfs: only stress sysfs if spinlock succeeded and bump counter
* stress-sysfs: remove redundant null check on path
* Fri Feb 23 2018 mardnh@gmx.de
- Update to version 0.09.17
* Makefile: bump version
* Manual: update date
* stress-rawdev: make some functions static
* stress-funcall: fix -Wmissing-declarations warning message
* stress-file-ioctl: remove extraneous shadowed variable 'ret'
* stress-madvise: make ret non-clobberable for gcc 4.2.1
* Add minimum GCC version for Pragma push/pop
* shim: older gcc required pragmas outside of functions
* stress-enosys: older gcc required pragmas outside of functions
* Check for clang version when using pragmas
* stress-file-ioctl: remove debug printf
* Add new file-ioctl stressor
* shim: disable warnings for brk and sbrk for OS X
* Swap ordering on compiler detection on pragmas
* stress-enosys: turn off warning on syscall, cleans up OS X warning
* Add no warning pragma macros
* Makefile: force sync after build in case reboot loses executable
* stress-enosys: add syscall7 shim
* stress-dirdeep: only print info message on instance #0
* stress-enosys: wrap with OOM catcher (LP: #1750787)
* stress-dev: add bug reference to hpet failure
* stress-enosys: exercise more arguments in syscall
* Manual: udp-lite should be for ipv6 as well as ipv4
* Manual: update arch specific limitations on lockbus and memthrash
stressors
* Fri Feb 16 2018 mardnh@gmx.de
- Update to version 0.09.16
* Makefile: bump version
* Silence a build warning on %d for g_pgrp, cast to int
* Use the new is_dot_filename() helper
* Add is_dot_filename helper function to check for "." or ".." filenames
* stress-filename: clean up temporary files on forced termination
* stress-handle: catch any SIGKILL signals and report back
* stress-filename: catch any SIGKILL signals and report back
* Print process ID in [ ] braces
* Add debug to inform us when stress-ng kills process group with SIGKILL
* Makefile: make build output less noisy and cluttered
* helper: add in compiler major minor info
* stress-vecmath: don't built with clang less than version 5.0
* Sun Feb 04 2018 mardnh@gmx.de
- Update to version 0.09.15
* Makefile: bump version
* stress-bind-mount: ensure we have clone support with HAVE_CLONE
check, fixes another FTBFS in ia64
* stress-wait: remove empty line
* Rename array and type unsupported to supported
* stress-flock: Add more flock lock types, add more stressing children
* Wed Jan 31 2018 mardnh@gmx.de
- Update to version 0.09.14
* Makefile: bump version
* stress-sigpipe: reduce scope of int ret
* stress-wcsstr: sanity check to see if there are any wcs* functions
* Add full wide char function autodetection
* stress-chown: workaround a NetBSD hang on usleep
* stress-chmod: workaround a NetBSD hang on usleep
* stress-cpu: add __fp16 float16 support (ARM)
* test/test-float: ensure test code is not overly optimized out
* test/test-float.c: ensure build options are same as stress-cpu.c
* Generalize float type config tests
* stress-cpu: Add float32, float80 and float128 support
* stress-ng: add some alignment tweaks to naturally align fields
* Add a new vm-addr virtual memory address stressor
* README: update number of stressors
* stress-funccall: make functions non-static, force less optimization
* stress-vm: add UNLIKELY annotations to improve performance
* stress-procfs: don't write using a NULL badbuf
* Add sigpipe stressor
* Add bad write buffer to procfs write
* stress-procfs: do proc writes only if proc_write is true
* stress-vm-rw: fix build failure on ia64 with missing HAVE_CLONE
* Fri Jan 26 2018 mardnh@gmx.de
- Update to version 0.09.13
* Makefile: bump version
* Manual: update date
* Makefile.config: reorder detection, no major change
* stress-userfault: add missing check for HAVE_CLONE, should fix
FTBFS for ia64 arch
* Rename stress_hdd_opts to stress_set_hdd_opts
* Rename stress_filename_opts to stress_set_filename_opts
* stress-matrix: make a couple of functions static
* stress-enosys: fix variable shadowing warning
* Add HAVE_SYSCALL_H detection and try to get more syscall coverage
* stress-enosys: add an a complete set of known syscalls to skip
* stress-enosys: make index ssize_t, fixes GNU/HURD build warning
* Ensure skip syscall array is at least 1 element
* Add a new enosys system call stressor
* test/test-notify: add sanity check on message length
* stress-cyclic: cast longs to int64_t before multiply to fix overflow
* stress-funccall: add arg swapped recursion to calls
* stress-funccall: add large data structure passing
* stress-vecmath: vectorize constants, make them const too
* Tue Jan 23 2018 mardnh@gmx.de
- Update to version 0.09.12
* Makefile: bump version
* stress-clone: fix build issue on systems without the clone system call
* test/test-getmntent: remove unused variable 'n'
* stress-revio: fix build warning on OS X builds
* stress-swap: use mwc1() for single bit random value
* stress-shm: use mwc1() for single bit random value
* stress-shm-sysv: use mwc1() for single bit random value
* stress-schedpolicy: use mwc1() for single bit random value
* stress-key: use mwc1() for single bit random value
* stress-iomix: use mwc1() for single bit random value
* stress-dup: use mwc1() for single bit random value
* stress-aio: use mwc1() for single bit random value
* stress-madvise: add in new MADV options (Linux + BSD)
* stress-membarrier: add in new membarrier commands to enum
* Add fixed mmaping stressor, mmap-fixed
* stress-fcntl: add F_GET_RW_HINT/F_SET_RW_HINT fcntl controls
* stress-branch: optimization, remove a ! operator and align jmp table
* stress-dev: add some extra per-device ioctl exercising
* Makefile.config: generalize header detection
* stress-madvise: perform random file or anonymous mapping for MADV_FREE
* Add 1 bit mwc function
* stress-madvise: add MADV_KEEPONFORK advise flag
* Add reverse I/O stressor: revio
* Thu Jan 18 2018 mardnh@gmx.de
- Update to version 0.09.11
* Makefile: bump version
* Manual: update date
* stress-sigio: don't build if missing various core functionality
* stress-sigio: remove sigprocmask, this is not used now
* Makefile: forgot to add the new stress-sigio stressor
* Add new sigio asynchronous I/O SIGIO stressor
* Add clone glibc wrapper autodetection, fixes ia64 builds
* Manual: remove excessive misplaced escape chars
* Sat Jan 13 2018 mardnh@gmx.de
- Update to version 0.09.10
* Makefile: bump version
* stress-tlb-shootdown: ensure proc_mask is zero'd before use
* Makefile.config: make fdatasync test fail if prototype is different
* stress-rawdev: fix warning on non-linux builds
* Manual: add another contributor to the manual
* stress-unshare: throttle back when resources are getting low
* stress-rawdev: make min/max block size #define values
* stress-rawdev: ensure blksize cannot be less than 512 bytes
* stress-rawdev: don't allow insanely sized block sizes
* stress-rawdev: add a keep stressing check inside wiggle 2nd loop
* stress-rawdev: ensure shifted values are never zero
* stress-rawdev: use correct type for reading block size
* stress-resources: ensure we don't have too many resource forks
* stress-resources: try hard not to get too many OOMs
* stress-dev: disable /dev/hpet testing when running as root
* debian/control: skip requirement of libkeyutils-dev for ia64
* stress-matrix: fix broken xy vs yx matrix method selection
* stress-vm: remove a duplicated check addr == ptr
* stress-filename: compare to zero rather than <= 0
* stress-fcntl.c: fix syntax errors
* Update copyright year
* Fri Jan 05 2018 mardnh@gmx.de
- Update to version 09.09.09
* Makefile: bump version
* stress-tlb-shootdown: only kill legitimate pids
* stress-tlb-shootdown: make child processes more OOM-able
* stress-rawdev: replace some spaces with tab for indentation
* stress-ng.1: fix table for rawdev-method option
* Mon Jan 01 2018 mardnh@gmx.de
- Update to version 0.09.08
* Makefile: bump version
* Makefile.config: remove need for LIBBSD for wchar.h path detection
* stress-rawdev: fix linking failure on non linux systems
* Add wchar.h and bsd/wchar.h path detection, makes stress-ng.h cleaner
* Add rawdev raw device read stressor
* stress-vecmath: use uint128_put for 128 bit integer
* Move ALIGNED and SECTION macros to stress-ng.h
* Add OPTIMIZE0 level zero optimization hint macro
* stress-socket-diag: remove some consts, cleans up clang warnings
* Use the FORMAT macro for some printf style functions
* stress-vm: fix warning when building with PEDANTIC=1
* stress-tlb-shootdown: fix unterminated comment
* stress-timer: fix warning when building with PEDANTIC=1
* stress-itimer: fix warning when building with PEDANTIC=1
* stress-funccall: clean up warnings when building with PEDANTIC=1
* stress-physpage: only close an opened fd_pc file descriptor
* stress-tlb: fix incorrect affinity on cores
* Sun Dec 17 2017 mardnh@gmx.de
- Update to version 0.09.07
* Makefile: bump version
* Makefile: add stress-version.h to make dist rules
* test: clean up errors in config tests found by static analysis
* Add lockf autoconfigure detection
* stress-io: use HAVE_SYNCFS to detect syncfs availability
* stress-dirdeep: use HAVE_SYNCFS to detect syncfs availability
* Add syncfs autoconfigure detection
* Add fdatasync autoconfigure detection
* Add fsync autoconfigure detection
* stress-flock: remove __sun__ restriction
* Add posix_memalign autoconfigure detection
* Add futimes autoconfigure detection
* stress-zlib: remove restriction on __sun__
* stress-wait: only disable for broken GNU/Hurd
* Makefile.config: add -Werror to fix build warnings on Minix
* Add mount autoconfigure detection for BSD and Linux
* stress-rmap: remove build restrictions on non-linux systems
* stress-ng: ensure utsname.h is included for non-linux builds
* stress-get: ensure utsname.h is included for non-linux builds
* stress-get: fix build error on non-linux platform
* Add x86 cpuid autoconfigure detection
* Add strlcpy strlcat string func autoconfigure detection
* helper: clean up utsname includes
* Add uname autoconfiguration detection
* stress-msync: replace __minix__ with HAVE_MSYNC
* stress-mincore: use the HAVE_MINCORE macro rather than __gnu_hurd__
* Add sigwaitinfo and sigqueue autoconfig detection
* stress-hdd: replace __gnu_hurd__ with more generic posix fadvise check
* stress-wait: add notes on why this is disabled on GNU/Hurd
* helper: use HAVE_SIGALTSTACK instead of minix and GNU/Hurd checks
* stress-msync: enable build for GNU/Hurd
* Add posix_openpt autoconfig detection
* stress-mincore: remove extraneous space at end of error message
* test/test-posix-fadvise: force failures GNU/Hurd
* Add posix_fadvise autoconfig detection
* test: force failures for mincore and msync for GNU/Hurd
* stress-fcntl: fix incorrect usage of F_DUPFD_CLOEXEC flag
* stress-get: remove __minix__ #define check
* Add mincore autoconfig detection
* Add msync autoconfigure detection
* stress-mmap: call shim_msync rather than msync
* Add mprotect autoconfigure detection
* Add autoconfigure detection of sigaltstack
* Add autodetection of mlockall and munlockall
* Add mlock autodetection
* Add getpgid autoconfigure detection
* Add getpgrp autoconfigure detection
* split out version macros into stress-version.h
* Add dup3 autoconfigure detection
* stress-trees: voidify return of get_setting for tree-method option