armv7 kyua runs via chroot on aarch64: zfs tests leave behind processes from timed out tests

From: Mark Millard <marklmi_at_yahoo.com>
Date: Thu, 03 Aug 2023 07:19:27 UTC
This is after the patch (leading whitespace might
not have been preserved in what you see):

# git -C /usr/main-src/ diff sys/dev/md/
diff --git a/sys/dev/md/md.c b/sys/dev/md/md.c
index a719dccb1955..365296ec4276 100644
--- a/sys/dev/md/md.c
+++ b/sys/dev/md/md.c
@@ -147,8 +147,15 @@ struct md_ioctl32 {
        int             md_fwsectors;
        uint32_t        md_label;
        int             md_pad[MDNPAD];
+#ifdef __aarch64__
+       uint32_t        md_pad0;
+#endif
 } __attribute__((__packed__));
+#ifdef __aarch64__
+CTASSERT((sizeof(struct md_ioctl32)) == 440);
+#else
 CTASSERT((sizeof(struct md_ioctl32)) == 436);
+#endif
 
 #define        MDIOCATTACH_32  _IOC_NEWTYPE(MDIOCATTACH, struct md_ioctl32)
 #define        MDIOCDETACH_32  _IOC_NEWTYPE(MDIOCDETACH, struct md_ioctl32)


The kyua run is still in process, but at this point there is
the following accumulation from the zfs testing timouts:

# ps -alxdww
UID   PID  PPID C PRI NI   VSZ   RSS MWCHAN   STAT TT        TIME COMMAND
. . .
  0 17491     1 6  20  0 36460 12324 -        T     -     0:24.71 |-- fsync_integrity /testdir2316/testfile2316
  0 17551     1 5  20  0 10600  7512 tx->tx_s D     -     0:00.00 |-- /sbin/zpool destroy -f testpool.2316
  0 17739     1 7  20  0 10600  7308 zfs tear D     -     0:00.00 |-- /sbin/zpool destroy -f testpool.2316
  0 17841     1 3  20  0 10600  7316 tx->tx_s D     -     0:00.00 |-- /sbin/zpool destroy -f testpool.2316
  0 17860     1 0  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 17888     1 3  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 17907     1 6  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 17928     1 7  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 17955     1 0  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 17976     1 4  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 17995     1 2  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18023     1 2  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18043     1 2  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18064     1 3  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18085     1 0  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18114     1 7  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18135     1 2  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18157     1 6  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18177     1 6  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18205     1 4  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18224     1 1  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18255     1 3  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18275     1 1  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18296     1 5  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18317     1 4  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18345     1 4  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18365     1 2  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18386     1 3  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18412     1 1  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18447     1 5  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18466     1 5  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18516     1 6  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18535     1 2  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade
  0 18632     1 0  20  0 10080  6956 spa_name D     -     0:00.00 |-- /sbin/zfs upgrade

Lots of these are from 300s timeouts but some are from 1200s or
1800s or 3600s timeouts.

For reference:

sys/cddl/zfs/tests/txg_integrity/txg_integrity_test:fsync_integrity_001_pos  ->  broken: Test case body timed out  [1800.053s]
sys/cddl/zfs/tests/txg_integrity/txg_integrity_test:txg_integrity_001_pos  ->  passed  [63.702s]
sys/cddl/zfs/tests/userquota/userquota_test:groupspace_001_pos  ->  skipped: Required program 'runwattr' not found in PATH  [0.003s]
sys/cddl/zfs/tests/userquota/userquota_test:groupspace_002_pos  ->  skipped: Required program 'runwattr' not found in PATH  [0.002s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_001_pos  ->  skipped: Required program 'runwattr' not found in PATH  [0.002s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_002_pos  ->  broken: Test case cleanup timed out  [0.148s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_003_pos  ->  broken: Test case cleanup timed out  [0.151s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_004_pos  ->  skipped: Required program 'runwattr' not found in PATH  [0.002s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_005_neg  ->  broken: Test case body timed out  [300.021s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_006_pos  ->  broken: Test case body timed out  [300.080s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_007_pos  ->  skipped: Required program 'runwattr' not found in PATH  [0.002s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_008_pos  ->  broken: Test case body timed out  [300.034s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_009_pos  ->  broken: Test case body timed out  [300.143s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_010_pos  ->  skipped: Required program 'runwattr' not found in PATH  [0.002s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_011_pos  ->  broken: Test case body timed out  [300.003s]
sys/cddl/zfs/tests/userquota/userquota_test:userquota_012_neg  ->  broken: Test case body timed out  [300.019s]
sys/cddl/zfs/tests/userquota/userquota_test:userspace_001_pos  ->  skipped: Required program 'runwattr' not found in PATH  [0.002s]
sys/cddl/zfs/tests/userquota/userquota_test:userspace_002_pos  ->  skipped: Required program 'runwattr' not found in PATH  [0.002s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_001_pos  ->  broken: Test case body timed out  [300.052s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_002_pos  ->  skipped: Required program 'labelit' not found in PATH  [0.002s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_003_pos  ->  broken: Test case body timed out  [300.076s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_004_pos  ->  broken: Test case body timed out  [300.106s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_005_pos  ->  skipped: Required program 'ff' not found in PATH  [0.002s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_006_pos  ->  broken: Test case body timed out  [300.015s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_007_pos  ->  broken: Test case body timed out  [300.005s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_008_pos  ->  skipped: Required program 'ncheck' not found in PATH  [0.002s]
sys/cddl/zfs/tests/utils_test/utils_test_test:utils_test_009_pos  ->  broken: Test case body timed out  [300.051s]
sys/cddl/zfs/tests/write_dirs/write_dirs_test:write_dirs_001_pos  ->  broken: Test case body timed out  [1200.056s]
sys/cddl/zfs/tests/write_dirs/write_dirs_test:write_dirs_002_pos  ->  broken: Test case body timed out  [1200.046s]
sys/cddl/zfs/tests/zfsd/zfsd_test:zfsd_autoreplace_001_neg  ->  broken: Test case body timed out  [3600.055s]


Other timeouts not from zfs tests have not had an accumulation
of processes left behind. But these may be the set of tests
that use ksh93 for scripting. I make no claim of knowing the
zfs vs. ksh93 vs. both vs. ??? for what is contributing.


I'll note that the system was booted via a bectl BE environment
on the only FreeBSD media enabled, so is a zfs-root boot context.

For reference:

# uname -apKU
FreeBSD CA78C-WDK23-ZFS 14.0-CURRENT FreeBSD 14.0-CURRENT aarch64 1400093 #6 main-n264334-215bab7924f6-dirty: Wed Aug  2 14:12:14 PDT 2023     root@CA78C-WDK23-ZFS:/usr/obj/BUILDs/main-CA78C-nodbg-clang/usr/main-src/arm64.aarch64/sys/GENERIC-NODBG-CA78C arm64 aarch64 1400093 1400093

I preload various modules (6 are commented out [not preloaded]
and some listed may be actually built into the kernel):

# grep kldload ~/prekyua-kldloads.sh 
kldload -v -n zfs.ko
kldload -v -n cryptodev.ko
kldload -v -n nullfs.ko
kldload -v -n fdescfs.ko
kldload -v -n filemon.ko
kldload -v -n nfsd.ko
kldload -v -n tarfs.ko
kldload -v -n xz.ko
kldload -v -n geom_concat.ko
kldload -v -n geom_eli.ko
kldload -v -n geom_nop.ko
kldload -v -n geom_gate.ko
kldload -v -n geom_mirror.ko
kldload -v -n geom_multipath.ko
kldload -v -n sdt.ko
kldload -v -n dtrace.ko
kldload -v -n opensolaris.ko
kldload -v -n geom_raid3.ko
kldload -v -n geom_shsec.ko
kldload -v -n geom_stripe.ko
kldload -v -n geom_uzip.ko
kldload -v -n if_epair.ko
kldload -v -n if_gif.ko
kldload -v -n if_tuntap.ko
kldload -v -n if_lagg.ko
kldload -v -n if_infiniband.ko
kldload -v -n if_wg.ko
kldload -v -n ng_socket.ko
kldload -v -n netgraph.ko
kldload -v -n ng_hub.ko
kldload -v -n ng_bridge.ko
kldload -v -n ng_ether.ko
kldload -v -n ng_vlan_rotate.ko
kldload -v -n ipdivert.ko
kldload -v -n pf.ko
kldload -v -n if_bridge.ko
kldload -v -n bridgestp.ko
kldload -v -n mqueuefs.ko
kldload -v -n tcpmd5.ko
kldload -v -n carp.ko
kldload -v -n sctp.ko
kldload -v -n if_stf.ko
kldload -v -n if_ovpn.ko
kldload -v -n ipsec.ko
#kldload -v -n ipfw.ko
#kldload -v -n pflog.ko
#kldload -v -n pfsync.ko
kldload -v -n dummynet.ko
#kldload -v -n mac_bsdextended.ko
#kldload -v -n mac_ipacl.ko
#kldload -v -n mac_portacl.ko

armv7 ports built and installed in the armv7 chroot
area include:

# more ~/origins/kyua-origins.txt
archivers/gtar
devel/gdb
devel/py-pytest
devel/py-pytest-twisted
devel/py-twisted
lang/perl5.32
lang/python
net/scapy
security/nist-kat
security/openvpn
security/sudo
shells/ksh93
shells/bash
sysutils/coreutils
sysutils/sg3_utils
textproc/jq

(Those cause others to also be installed.)


===
Mark Millard
marklmi at yahoo.com