[newlib-cygwin/main] Cygwin: CI: cygstress: update for stress-ng 0.21.04 and current Cygwin
Jon Turney via Cygwin-cvs <[email protected]> Thu, 16 Jul 2026 14:09:10 +0000 (GMT)
| Newsgroups | gmane.os.cygwin.cvs |
|---|---|
| Message-ID | <[email protected]> |
https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3D6935312a0aa= 781a80b8243dbf085b35b44ebb53f commit 6935312a0aa781a80b8243dbf085b35b44ebb53f Author: Christian Franke <[email protected]> Date: Tue Jul 14 15:22:02 2026 +0200 Cygwin: CI: cygstress: update for stress-ng 0.21.04 and current Cygwin =20 Also fix the sort order of stress tests. =20 Signed-off-by: Christian Franke <[email protected]> Diff: --- winsup/testsuite/stress/cygstress | 82 +++++++++++++++++++++++++----------= ---- 1 file changed, 52 insertions(+), 30 deletions(-) diff --git a/winsup/testsuite/stress/cygstress b/winsup/testsuite/stress/cy= gstress index 9b3fa2c07..80dfa795f 100755 --- a/winsup/testsuite/stress/cygstress +++ b/winsup/testsuite/stress/cygstress @@ -2,7 +2,7 @@ # # Run stress-ng on Cygwin # -# Copyright 2025 Christian Franke +# Copyright 2025-26 Christian Franke # # SPDX-License-Identifier: BSD-3-Clause # @@ -22,7 +22,7 @@ Usage: ${0##*/} [OPTION...] {CI|WORK|FAIL|test...} -f force execution of tests tagged 'heavy' or 'admin' -n print commands only (dry-run) -r N run test set N times [default: 1] - -s PATH stress-ng executable [default: stress-ng] + -s PATH stress-ng executable [default: /usr/bin/stress-ng] -t N run each test for at least N seconds [default: 5] -v print stress-ng output always [default: on error only] -w N start N workers for each test [default: 2] @@ -36,7 +36,7 @@ EOF } =20 # Tags: -# WORKS: works on Cygwin (3.7.0-0.192.gc85f42a4f3ee.x86_64) + stress-ng V0= .19.02 +# WORKS: works on Cygwin 3.7.0-0.551.g383618c8902f.x86_64 + stress-ng 0.21= .04 # WORKS,CI: possibly suitable subset for Cygwin CI test. # FAILS: fails on Cygwin, see "TODO ..." for details. # heavy: heavy resource usage, may work, hang, freeze desktop, require res= et, ... @@ -46,6 +46,7 @@ EOF stress_tests=3D' # TEST [ARGS] # Tag # Comment access # FAILS # TODO undecided: "access 004 on chmod mode 40= 0 failed: 13 (Permission denied)" + acct # ----- # requires acct(2) acl # WORKS,CI # (fixed in stress-ng 0.18.12) affinity # WORKS af-alg # ----- # requires AF_ALG @@ -69,8 +70,8 @@ stress_tests=3D' bubblesort # WORKS =20 cache # WORKS - cacheline # WORKS cachehammer # WORKS + cacheline # WORKS cap # ----- cgroup # ----- chattr # ----- @@ -78,6 +79,7 @@ stress_tests=3D' chmod # WORKS,CI chown # FAILS # TODO undecided: "fchown failed, errno=3D22 (= Invalid argument)" chroot # admin + chyperbolic # WORKS clock # WORKS,CI # (fixed in stress-ng 0.18.12: "timer_create f= ailed for timer ... # ... ''CLOCK_THREAD_CPUTIME_ID'', errno=3D13= 4") # (fixed in Cygwin 3.7.0: "clock_settime was a= ble to set an ... @@ -88,9 +90,11 @@ stress_tests=3D' copy-file # ----- cpu # WORKS cpu-online # ----- - cpu-sched # FAILS # TODO undecided: "child died: signal 9 ''SIGK= ILL''" + cpu-sched # FAILS # TODO undecided: "child died: signal 9 ''SIGK= ILL''" and/or processes left # (fixed in Cygwin 3.6.0: signals lost after S= IGSTOP) + crc # WORKS crypt # WORKS # uses libcrypt + ctrig # WORKS cyclic # admin =20 daemon # WORKS @@ -109,17 +113,18 @@ stress_tests=3D' dynlib # ----- =20 easy-opcode # WORKS - eigen # WORKS # uses libeigen (C++ template lib) efivar # ----- + eigen # WORKS # uses libeigen (C++ template lib) enosys # ----- env # heavy # creates very large environment until OOM epoll # ----- + eth-sniff # ----- # requires <net/ethernet.h>, ... eventfd # ----- - exec # WORKS,CI + exec # WORKS,CI # TODO stress-ng: "open ... failed, errno=3D2"= if started from PATH exit-group # ----- # requires exit_group(2) expmath # WORKS =20 - factor # FAILS # uses libgmp; TODO undecided: "terminated on = signal 11 ''SIGSEGV''" + factor # WORKS # uses libgmp; (fixed in ?: "terminated on sig= nal 11 ''SIGSEGV''") fallocate # WORKS,CI fanotify # ----- far-branch # WORKS @@ -134,10 +139,11 @@ stress_tests=3D' fiemap # ----- fifo # WORKS file-ioctl # WORKS,CI + filehole # WORKS,CI filename # FAILS # TODO Cygwin: high surrogate at the end of th= e string is lost, please see: # https://sourceware.org/pipermail/cygwin/20= 25-June/258386.html # (fixed in Cygwin 3.7.0: lone high surrogate = not encoded correctly) - filename --filename-opts posix # WORKS,CI # restricts filenames to POSIX= charset + filename --filename-opts utf8 # WORKS,CI # restricts filenames to UTF-8 = charset filerace # heavy # uses many [p]write() commands # TODO undecided: watchdog timeout may be too = short flipflop # WORKS @@ -148,6 +154,7 @@ stress_tests=3D' forkheavy # heavy # forks until process table is full fp # WORKS,CI fp-error # WORKS,CI + fp-misc # WORKS,CI fpunch # WORKS,CI # (fixed in stress-ng 0.19.00: lseek() on shar= ed fd) fractal # WORKS fsize # heavy # creates large files until disk is full @@ -157,6 +164,7 @@ stress_tests=3D' funcret # WORKS futex # ----- =20 + gamma # WORKS get # WORKS getdent # ----- getrandom # ----- @@ -178,13 +186,13 @@ stress_tests=3D' inotify # ----- # requires inotify_*(2) insertionsort # WORKS intmath # WORKS - io # WORKS + io # WORKS # (fixed in stress-ng 0.21.04:: "rmdir '...' f= ailed, errno=3D2") iomix # WORKS ioport # ----- ioprio # ----- io-uring # ----- ipsec-mb # ----- # requires libipsec-mb - itimer # WORKS,CI + itimer # ----- # requires ITIMER_PROF =20 jpeg # WORKS # uses libjpeg judy # ----- # requires libJudy (ORPHANED) @@ -205,7 +213,7 @@ stress_tests=3D' llc-affinity # WORKS loadavg # WORKS locka # WORKS - lockbus # WORKS + lockbus # FAILS # TODO Cygwin: processes left lockf # WORKS,CI # (fixed in Cygwin 3.5.5: "NtCreateEvent(lock)= : 0xC000003" and ... # "can''t handle more than 910 locks per file= ") lockmix # WORKS @@ -238,11 +246,12 @@ stress_tests=3D' mmap # WORKS,CI mmapaddr # WORKS mmapcow # WORKS - mmapfork # WORKS mmapfiles # WORKS mmapfixed # WORKS + mmapfork # WORKS mmaphuge # ----- mmapmany # WORKS + mmaprandom # ----- # requires deprecated <sys/tree.h>, RB_GENERAT= E does not compile mmaptorture # heavy module # ----- monte-carlo # WORKS @@ -260,7 +269,7 @@ stress_tests=3D' munmap # ----- mutex # WORKS =20 - nanosleep # WORKS,CI # (fixed in ?: "detected 1 unexpected nanoslee= p underruns") + nanosleep # FAILS # TODO undecided: "detected 1 unexpected nanos= leep underruns" netdev # ----- netlink-proc # ----- netlink-task # ----- @@ -268,12 +277,15 @@ stress_tests=3D' nop # WORKS null # WORKS numa # ----- + numacopy # ----- =20 oom-pipe # ----- opcode # ----- - open # WORKS,CI # TODO undecided: "rmdir ... failed, errno=3D9= 0 (Directory not empty)" + open # WORKS,CI # (fixed in ?: "rmdir ... failed, errno=3D90 (= Directory not empty)") + ovpn # ----- # requires <linux/ovpn.h> =20 pagemove # ----- + pagescatter # WORKS,CI # (fixed in Cygwin 3.7.0: madvise() returns er= ror number instead of -1) pageswap # ----- pci # ----- personality # ----- @@ -290,7 +302,7 @@ stress_tests=3D' powmath # WORKS prctl # ----- prefetch # WORKS - prime # FAILS # uses libgmp; TODO undecided: "terminated on = signal 11 ''SIGSEGV''" + prime # WORKS # uses libgmp; (fixed in ?: "terminated on sig= nal 11 ''SIGSEGV''") prio-inv # ----- # requires <pthread_nt.h> priv-instr # WORKS,CI # (fixed in Cygwin 3.7.0: crashes or hangs) procfs # WORKS,CI # (fixed in Cygwin 3.7.0: /proc/PID/maps may s= egfault foreign processes @@ -299,7 +311,7 @@ stress_tests=3D' pthread # WORKS,CI ptr-chase # WORKS ptrace # ----- - pty # WORKS,CI # TODO undecided: "tcflush TCOOFLUSH on follow= er pty failed, errno=3D4" + pty # FAILS # TODO undecided: "tcflush TC(IO|OO|I)FLUSH on= follower pty failed, errno=3D4" # (fixed in Cygwin 3.7.0: implement tcdrain/tc= flow/TIOCINQ for pty) # (fixed in Cygwin 3.6.1: "No pty allocated, e= rrno=3D0") qsort # WORKS @@ -308,10 +320,10 @@ stress_tests=3D' race-sched # WORKS radixsort # WORKS # uses libbsd ramfs # ----- - rawdev # ----- randlist # WORKS - rawsock # ----- + rawdev # ----- rawpkt # ----- # requires <linux/if_packet.h>, ... + rawsock # ----- rawudp # ----- rdrand # WORKS readahead # ----- @@ -326,6 +338,7 @@ stress_tests=3D' ring-pipe # WORKS rlimit # heavy rmap # WORKS + rofs # ----- # requires --rofs-dir (fixed in stress-ng 0.21= .02: "SIGSEGV", "listxattr() ... failed") rotate # WORKS rseq # ----- rtc # ----- # requires /dev/rtc @@ -337,18 +350,19 @@ stress_tests=3D' seccomp # ----- secretmem # ----- seek # WORKS,CI - sem # FAILS # TODO Cygwin: "instance 0 corrupted bogo-ops = counter, 556328 vs 556327" - sem-sysv # FAILS # TODO Cygwin: "aborted early, out of system r= esources" + sem # WORKS,CI # (fixed in ?: "instance 0 corrupted bogo-ops = counter, 556328 vs 556327") + sem-sysv # ----- # WORKS if cygserver is running sendfile # ----- # requires sendfile(2) session # WORKS - set # FAILS # TODO stress-ng: "setrlimit failed, ..., expe= cted -EPERM, instead got errno=3D22 (Invalid argument)" + set # WORKS # (fixed in stress-ng 0.18.06: "setrlimit fail= ed, ..., expected -EPERM, instead got errno=3D22 ...") shellsort # WORKS - shm # WORKS,CI + shm # WORKS,CI # TODO stress-ng: bogus message "assuming kill= ed by OOM killer, restarting again" + # (fixed in Cygwin 3.6.1 + stress-ng 0.21.04 := "ftruncate of shared memory failed") shm-sysv # ----- # requires shmat(2), smdt(2) sigabrt # WORKS,CI - sigbus # FAILS # TODO Cygwin: "ftruncate file to a single pag= e failed, errno=3D13 (Permission denied)" + sigbus # FAILS # TODO undecided: "ftruncate file to a single = page failed, errno=3D13 (Permission denied)" sigchld # FAILS # TODO Cygwin: hangs - sigfd # ----- # TODO Cygwin: "stressor terminated with unexp= ected signal 11 ''SIGSEGV''" + sigfd # FAILS # TODO Cygwin: hangs # (fixed in stress-ng 0.19.02: drop restrictio= n to glibc) sigfpe # WORKS,CI # (fixed in ?: "got SIGFPE error 15 (FPE_INTDE= V), expecting 20 (FPE_FLTRES)") sighup # WORKS,CI @@ -360,7 +374,9 @@ stress_tests=3D' sigpipe # FAILS # TODO undecided: hangs in few cases sigq # WORKS,CI sigrt # WORKS,CI - sigsegv # WORKS,CI # (fixed in Cygwin 3.7.0: crashes or hangs) + sigsegv # WORKS,CI # (fixed in stress-ng 0.21.04: "expecting faul= t address 0x..., got 0xffffffffffffffff instead") + # (fixed in Cygwin 3.7.0: crashes or hangs) + sigstop # WORKS,CI sigsuspend # WORKS,CI sigtrap # WORKS,CI sigurg # WORKS,CI @@ -386,6 +402,7 @@ stress_tests=3D' statmount # ----- str # WORKS stream # WORKS # (fixed in stress-ng 0.19.02: --stream-l3-siz= e set correctly) + strnum # WORKS swap # ----- switch # WORKS symlink # WORKS,CI @@ -393,14 +410,16 @@ stress_tests=3D' syncload # WORKS sysbadaddr # heavy syscall # FAILS # TODO Cygwin: "terminated on signal: 11" + sysfs # ----- # requires /sys sysinfo # WORKS sysinval # ----- - sysfs # ----- =20 tee # ----- # requires tee(2) timer # FAILS # TODO undecided: "1 timer settime calls faile= d" timerfd # heavy # TODO undecided: may freeze desktop + timermix # WORKS,CI # (fixed in stress-ng 0.21.02: "setitimer fail= ed, errno=3D22 (Invalid argument)") time-warp # WORKS + tlb-numa # ----- # requires mbind(2) tlb-shootdown # heavy tmpfs # ----- # requires tmpfs filesystem touch # WORKS @@ -422,6 +441,7 @@ stress_tests=3D' usersyscall # ----- utime # WORKS,CI =20 + varyload # WORKS vdso # ----- veccmp # WORKS vecfp # WORKS @@ -436,14 +456,15 @@ stress_tests=3D' vm-rw # ----- vm-segv # WORKS vm-splice # ----- - vma # WORKS + vma # FAILS # TODO Cygwin: "*** fatal error - Exception du= ring process exit" vnni # WORKS =20 wait # FAILS # TODO Cygwin: hangs in few cases waitcpu # WORKS watchdog # ----- wcs # WORKS - workload # WORKS,CI # (fixed in Cygwin 3.5.5: hang in mq_send/rece= ive) + workload # FAILS # TODO Cygwin: hangs and/or SIGSEGV in few cas= es + # (fixed in Cygwin 3.5.5: hang in mq_send/rece= ive) =20 x86cpuid # WORKS x86syscall # ----- @@ -456,7 +477,8 @@ stress_tests=3D' zombie # WORKS,CI ' =20 -error_mode=3D"cont"; stress_ng=3D"stress-ng" +stress_ng=3D"/usr/bin/stress-ng" # "--exec" fails if plain "stress-ng" is = used +error_mode=3D"cont" num_runs=3D1; timeout=3D5; workers=3D2 dryrun=3Dfalse; force=3Dfalse; verbose=3Dfalse taskset=3D