From: Jonathan GUILLOT Date: Wed, 24 Jan 2024 13:29:19 +0000 (+0000) Subject: udev-extraconf: fix unmount directories containing octal-escaped chars X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3c31248233356a04db1d5ed375b647656d80fa0;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git udev-extraconf: fix unmount directories containing octal-escaped chars USB devices are auto-mounted in a directory named like theirs labels. Special characters like whitespace are octal-escaped in /proc/mounts output. Using directly this output file as an argument for umount failed and the mount directory can't be removed as still busy. Using printf allows these special characters to be unescaped. Signed-off-by: Jonathan GUILLOT Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie (cherry picked from commit 37f17625d931a06888388682dc2b1f5a2d298125) Signed-off-by: Steve Sakoman --- diff --git a/meta/recipes-core/udev/udev-extraconf/mount.sh b/meta/recipes-core/udev/udev-extraconf/mount.sh index b7e86dbc0e6..6cb0a9fea85 100644 --- a/meta/recipes-core/udev/udev-extraconf/mount.sh +++ b/meta/recipes-core/udev/udev-extraconf/mount.sh @@ -196,7 +196,7 @@ if [ "$ACTION" = "remove" ] || [ "$ACTION" = "change" ] && [ -x "$UMOUNT" ] && [ logger "mount.sh/remove" "cleaning up $DEVNAME, was mounted by the auto-mounter" for mnt in `cat /proc/mounts | grep "$DEVNAME" | cut -f 2 -d " " ` do - $UMOUNT $mnt + $UMOUNT "`printf $mnt`" done # Remove mount directory created by the auto-mounter # and clean up our tmp cache file