[LTP] [PATCH 1/1] ima_setup.sh: Use tst_umount()
Petr Vorel
pvorel@suse.cz
Fri Aug 14 08:01:02 CEST 2026
Hi Mimi,
> Hi Petr,
> On Thu, 2026-08-13 at 13:25 +0200, Petr Vorel wrote:
> > Use standard test mechanism to detect problems during umount() caused by
> > GNOME's gvfsd-trash daemon. Although it will not solve the problem it at
> > least warn tester.
> > Reported-by: Mimi Zohar <zohar@linux.ibm.com>
> > Signed-off-by: Petr Vorel <pvorel@suse.cz>
> With this patch applied and after removing everything other than ima_violations
> from /opt/ltp/runtest/ima, I'm still seeing:
> ima_violations 1 TINFO: $TMPDIR is on tmpfs => run on loop device
> ima_violations 1 TINFO: booted with IMA policy: tcb
> ima_violations 1 TINFO: using log /var/log/audit/audit.log
> ima_violations 1 TINFO: verify open writers violation
> ima_violations 1 TPASS: 1 open_writers violation(s) added
> ima_violations 2 TINFO: verify ToMToU violation
> ima_violations 2 TPASS: 1 ToMToU violation(s) added
> ima_violations 3 TINFO: verify open_writers using mmapped files
> tst_kconfig.c:90: TINFO: Parsing kernel config '/lib/modules/7.1.5-
> 101.fc43.x86_64/build/.config'
> ima_violations 3 TBROK: tst_checkpoint wait 10000 0 failed
> umount: /tmp/LTP_ima_violations.1OEcI81NHB/mntpoint: target is busy.
> ima_violations 3 TINFO: umount(/tmp/LTP_ima_violations.1OEcI81NHB/mntpoint)
> failed, try 1 ...
> ima_violations 3 TINFO: Likely gvfsd-trash is probing newly mounted fs, kill it
> to speed up tests.
> umount: /tmp/LTP_ima_violations.1OEcI81NHB/mntpoint: target is busy.
> ima_violations 3 TINFO: umount(/tmp/LTP_ima_violations.1OEcI81NHB/mntpoint)
> failed, try 2 ...
I wonder if the process on your machine is gvfsd-trash or something else.
Unfortunately what we can do is probably just an advice to user, killing any
userspace process is probably too aggressive. So the current isn't really a
workaround just kind of a hint.
> The message keeps repeating ...
Yeah, I wonder if trying 50x makes even sense, IMHO 5x would be enough.
FYI the current code in tst_test.sh:
tst_umount()
{
local mntpoint="${1:-$TST_MNTPOINT}"
local i=0
[ -z "$mntpoint" ] && return
if ! echo "$mntpoint" | grep -q ^/; then
tst_brk TCONF "The '$mntpoint' is not an absolute path"
fi
if ! grep -q "${mntpoint%/}" /proc/mounts; then
tst_res TINFO "The '$mntpoint' is not mounted, skipping umount"
return
fi
while [ "$i" -lt 50 ]; do
if umount "$mntpoint" > /dev/null; then
return
fi
i=$((i+1))
tst_res TINFO "umount($mntpoint) failed, try $i ..."
tst_res TINFO "Likely gvfsd-trash is probing newly mounted "\
"fs, kill it to speed up tests."
tst_sleep 100ms
done
tst_res TWARN "Failed to umount($mntpoint) after 50 retries"
}
Kind regards,
Petr
> Mimi
> > ---
> > testcases/kernel/security/integrity/ima/tests/ima_setup.sh | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> > diff --git a/testcases/kernel/security/integrity/ima/tests/ima_setup.sh b/testcases/kernel/security/integrity/ima/tests/ima_setup.sh
> > index 19f00532b1..054ab28611 100644
> > --- a/testcases/kernel/security/integrity/ima/tests/ima_setup.sh
> > +++ b/testcases/kernel/security/integrity/ima/tests/ima_setup.sh
> > @@ -313,7 +313,7 @@ ima_cleanup()
> > [ -n "$TST_CLEANUP_CALLER" ] && $TST_CLEANUP_CALLER
> > for dir in $UMOUNT; do
> > - umount $dir
> > + tst_umount $dir
> > done
> > if [ "$IMA_POLICY_LOADED" = 1 ]; then
More information about the ltp
mailing list