Re: [PATCH 14/24] init: clear root_wait on all invalid root= strings

From: Guenter Roeck
Date: Thu Jun 22 2023 - 00:29:06 EST


On 6/21/23 20:51, Christoph Hellwig wrote:
On Wed, Jun 21, 2023 at 02:07:13PM -0700, Guenter Roeck wrote:
On Tue, May 23, 2023 at 09:45:25AM +0200, Christoph Hellwig wrote:
Instead of only clearing root_wait in devt_from_partuuid when the UUID
format was invalid, do that in parse_root_device for all strings that
failed to parse.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>

In linux-next, almost all of my boot tests from usb drives as well
as a few others fail with "Disabling rootwait; root= is invalid."
in the log. Bisect points to this patch.

Can you send such a log, and the command line you've used?



There are lots of logs at https://kerneltests.org/builders, in the 'next'
column of qemu tests. One example is
https://kerneltests.org/builders/qemu-arm-v7-next/builds/511/steps/qemubuildcommand/logs/stdio

Sample command line:

qemu-system-arm -M mcimx7d-sabre \
-kernel arch/arm/boot/zImage -no-reboot -snapshot \
-usb -device usb-storage,drive=d0,bus=usb-bus.1 \
-drive file=rootfs-armv7a.ext2,if=none,id=d0,format=raw \
-m 256 -nic user -display none \
--append "root=/dev/sda rootwait earlycon=ec_imx6q,mmio,0x30860000,115200n8 console=ttymxc0,115200" \
-dtb arch/arm/boot/dts/imx7d-sdb.dtb \
-nographic -monitor null -serial stdio

This is with a modified imx_v6_v7_defconfig and root file system from
https://github.com/groeck/linux-build-test/blob/master/rootfs/arm-v7/rootfs-armv7a.ext2.gz

The -EINVAL return value is from

if (p < s + 2 || !isdigit(p[-2]) || p[-1] != 'p')

in devt_from_devname().

Guenter