summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMariano López <just.another.mariano@gmail.com>2019-06-13 22:32:40 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-06-30 22:34:22 +0100
commit7f8cad5b1a7d72ba7225dcf42575971338d3b19b (patch)
tree3442af5c198bb1e0dea4e3fff322dc307c75654c
parent048c1467e2e077076213ec01c4f0d1f181434e4c (diff)
downloadpoky-7f8cad5b1a7d72ba7225dcf42575971338d3b19b.tar.gz
poky-7f8cad5b1a7d72ba7225dcf42575971338d3b19b.tar.bz2
poky-7f8cad5b1a7d72ba7225dcf42575971338d3b19b.zip
util-linux: Stop udevd to run ptests
The util-linux's ptest uses the SCSI_DEBUG kernel module to create virtual SCSI disks. The automount feature of udevd will try to mount these disks by default. Because udevd controls the mount of the disks, the eject/mount tests will fail or be skipped. This change will stop udevd before executing the util-linux's ptest and start the daemon again after all the tests. This is for eudevd only, systemd-udevd doesn't present this problem because there are no automount rules. [YOCTO #13301] (From OE-Core rev: 3d62aaa8d06387053f98e4156dc8920e2e97feea) Signed-off-by: Mariano López <just.another.mariano@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-core/util-linux/util-linux.inc4
-rw-r--r--meta/recipes-core/util-linux/util-linux/run-ptest14
2 files changed, 18 insertions, 0 deletions
diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc
index 7b9b4d2a30..a61bc78542 100644
--- a/meta/recipes-core/util-linux/util-linux.inc
+++ b/meta/recipes-core/util-linux/util-linux.inc
@@ -318,4 +318,8 @@ do_install_ptest() {
sed -i -e \
'/^TS_CMD_KILL/ s|kill|${PTEST_PATH}/bin/kill|g' \
${D}${PTEST_PATH}/tests/commands.sh
+
+
+ sed -i 's|@base_sbindir@|${base_sbindir}|g' ${D}${PTEST_PATH}/run-ptest
+
}
diff --git a/meta/recipes-core/util-linux/util-linux/run-ptest b/meta/recipes-core/util-linux/util-linux/run-ptest
index 03248325bf..e135ee583b 100644
--- a/meta/recipes-core/util-linux/util-linux/run-ptest
+++ b/meta/recipes-core/util-linux/util-linux/run-ptest
@@ -1,5 +1,14 @@
#!/bin/sh
+
+# When udevd (from eudev) is running most eject/mount tests will fail because
+# of automount. We need to stop udevd before executing util-linux's tests.
+# The systemd-udevd daemon doesn't change the outcome of util-linux's tests.
+UDEV_PID="`pidof "@base_sbindir@/udevd"`"
+if [ "x$UDEV_PID" != "x" ]; then
+ /etc/init.d/udev stop
+fi
+
current_path=$(readlink -f $0)
export bindir=$(dirname $current_path)
export PATH=$bindir/bin:$PATH
@@ -27,3 +36,8 @@ do
}'
done
+
+if [ "x$UDEV_PID" != "x" ]; then
+ /etc/init.d/udev start
+fi
+