diff options
author | Mateusz Guzik <mjg@FreeBSD.org> | 2022-08-23 23:43:00 +0300 |
---|---|---|
committer | Bryan Drewery <bryan@shatow.net> | 2022-08-31 22:47:09 +0300 |
commit | 137c376a8709b00ab3a3e8612c67c9e3f12631a2 (patch) | |
tree | f7d8c19605cbe9e2b1df3c128fdef603219341de /src/share | |
parent | 0fdf728422104abcf129db8c63473cf01c0a3cf6 (diff) |
Remove obsolete test for vfs.mnt_free_list_batch
In 2016 batching was introduced for free list management. Then in a59937e
poudriere started checking of the sysctl is present to manage parallel unmounts.
However, as of 2020 starting with:
commit cc3593fbd953e2eeec72dbca05e77632817cba0b
Author: Mateusz Guzik mjg@FreeBSD.org
Date: Mon Jan 13 02:37:25 2020 +0000
vfs: rework vnode list management
the sysctl is no longer present and the test no longer makes sense -- the
oldest supported release already has the sysctl and newer ones don't
while not having the perf problem.
Fixes #1011
Diffstat (limited to 'src/share')
-rwxr-xr-x | src/share/poudriere/common.sh | 11 | ||||
-rw-r--r-- | src/share/poudriere/include/fs.sh | 10 |
2 files changed, 3 insertions, 18 deletions
diff --git a/src/share/poudriere/common.sh b/src/share/poudriere/common.sh index 0ff20b8b..27957ca1 100755 --- a/src/share/poudriere/common.sh +++ b/src/share/poudriere/common.sh @@ -4771,10 +4771,6 @@ stop_builders() { msg "Stopping ${PARALLEL_JOBS} builders" real_parallel_jobs=${PARALLEL_JOBS} - if [ ${UMOUNT_BATCHING} -eq 0 ]; then - # Limit builders - PARALLEL_JOBS=2 - fi parallel_start for j in ${JOBS-$(jot -w %02d ${real_parallel_jobs})}; do parallel_run stop_builder "${j}" @@ -8935,13 +8931,6 @@ esac NCPU=$(sysctl -n hw.ncpu) -# Check if parallel umount will contend on the vnode free list lock -if sysctl -n vfs.mnt_free_list_batch >/dev/null 2>&1; then - # Nah, parallel umount should be fine. - UMOUNT_BATCHING=1 -else - UMOUNT_BATCHING=0 -fi # Determine if umount -n can be used. if grep -q "#define[[:space:]]MNT_NONBUSY" /usr/include/sys/mount.h \ 2>/dev/null; then diff --git a/src/share/poudriere/include/fs.sh b/src/share/poudriere/include/fs.sh index b3f60c62..0cc745e6 100644 --- a/src/share/poudriere/include/fs.sh +++ b/src/share/poudriere/include/fs.sh @@ -208,18 +208,14 @@ umountfs() { [ $# -lt 1 ] && eargs umountfs mnt childonly local mnt=$1 local childonly=$2 - local pattern xargsmax + local pattern [ -n "${childonly}" ] && pattern="/" mnt=$(realpath "${mnt}" 2>/dev/null || echo "${mnt}") - xargsmax= - if [ ${UMOUNT_BATCHING} -eq 0 ]; then - xargsmax="-n 2" - fi if ! findmounts "${mnt}" "${pattern}" | \ - xargs ${xargsmax} umount ${UMOUNT_NONBUSY}; then - findmounts "${mnt}" "${pattern}" | xargs ${xargsmax} umount -fv || : + xargs umount ${UMOUNT_NONBUSY}; then + findmounts "${mnt}" "${pattern}" | xargs umount -fv || : fi return 0 |