In my context, lack of poudriere/data/.m/NAME unmounts also leads to rm "Device busy" errors after "Unmounting file systems" notice

From: Mark Millard <marklmi_at_yahoo.com>
Date: Sat, 13 Jul 2024 15:58:54 UTC
First some context . . .

Before the chroot related activity:

# df -m
Filesystem        1M-blocks   Used  Avail Capacity  Mounted on
/dev/gpt/PBaseUFS   1114846 157483 868174    15%    /
devfs                     0      0      0     0%    /dev
/dev/gpt/PBaseEFI       244     26    218    11%    /boot/efi

Getting into the chroot context:

# ~/do-chroot-main-CA76-chroot-ports-local.sh
# df -m
Filesystem                                    1M-blocks   Used  Avail Capacity  Mounted on
/dev/gpt/PBaseUFS                               1114846 157483 868174    15%    /
devfs                                                 0      0      0     0%    /dev
/dev/gpt/PBaseEFI                                   244     26    218    11%    /boot/efi
devfs                                                 0      0      0     0%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/dev
fdescfs                                               0      0      0     0%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/dev/fd
/usr/official-src                               1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/official-src
/usr/main-src                                   1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/main-src
/usr/src                                        1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/PkgBase-src
/boot                                           1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/boot
/boot/efi                                           244     26    218    11%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/boot/efi
/usr/obj/DESTDIRs/main-CA76-poud                1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/obj/DESTDIRs/main-CA76-poud
/usr/obj/DESTDIRs/main-CA7-poud                 1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/obj/DESTDIRs/main-CA7-poud
/usr/obj/DESTDIRs/main-CA7-chroot-ports-local   1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/obj/DESTDIRs/main-CA7-chroot-ports-local
/usr/local/etc/poudriere.conf                   1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/local/etc/poudriere.conf
/usr/local/etc/pkg                              1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/local/etc/pkg
/usr/local/etc/poudriere.d                      1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/local/etc/poudriere.d
/usr/local/poudriere                            1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/local/poudriere
/usr/ports                                      1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/ports
/var/crash                                      1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/var/crash
/usr/lib/debug/boot                             1114846 157483 868174    15%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/lib/debug/boot

In that "chroot /usr/obj/DESTDIRs/main-CA7-chroot-ports-local/" context . . .

# poudriere version
poudriere-git-3.4.99.20240709

The end of 2 poudriere bulk attempts look like:

# poudriere bulk -jmain-CA76 -f ~/origins/CA76-origins.txt
. . .
[00:00:39] Logs: /usr/local/poudriere/data/logs/bulk/main-CA76-default/2024-07-13_08h22m17s
[00:00:39] Cleaning up
[00:00:39] Unmounting file systems
Error: (69632) rm:rm:1: /usr/local/poudriere/data/.m/main-CA76-default: Device busy
. . .

Note from a different run in a different chroot session:
Error: (24488) rm:rm:1: /usr/local/poudriere/data/.m/main-CA76-default: Device busy

[Unstable number in the ()'s.]

poudriere bulk -jmain-CA7 -f ~/origins/CA7-origins.txt
. . .
[00:00:33] Logs: /usr/local/poudriere/data/logs/bulk/main-CA7-default/2024-07-13_08h22m56s
[00:00:33] Cleaning up
[00:00:33] Unmounting file systems
Error: (96846) rm:rm:1: /usr/local/poudriere/data/.m/main-CA7-default: Device busy
. . .

Note from a different run in a different chroot session:
Error: (51602) rm:rm:1: /usr/local/poudriere/data/.m/main-CA7-default: Device busy

[Unstable number in the ()'s.]

The bulk runs leave behind mounts (which is why the rm activity was blocked):

# df -m
. . .
tmpfs                                            138056      0 138056     0%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/local/poudriere/data/.m/main-CA76-default
tmpfs                                            138056      0 138056     0%    /usr/obj/DESTDIRs/main-CA76-chroot-ports-local/usr/local/poudriere/data/.m/main-CA7-default


In use are:

USE_TMPFS=all
TMPFS_BLACKLIST= . . .
TMPFS_BLACKLIST_TMPDIR=${BASEFS}/data/cache/tmp


===
Mark Millard
marklmi at yahoo.com