Hi Rob, On Fri, Apr 28, 2017 at 02:39:39AM -0500, Rob Landley wrote: > QEMU fails to reboot with current kernels, instead it hangs eating CPU: > > # exit > reboot: Restarting system > Reboot failed -- System halted > > I bisected it to "MIPS: Malta: Use syscon-reboot driver to reboot" > commit 10b6ea0959de back in September. To reproduce, build a kernel with: > > cat > mini.conf << EOF > # CONFIG_EMBEDDED is not set > CONFIG_EARLY_PRINTK=y > CONFIG_BLK_DEV_INITRD=y > CONFIG_RD_GZIP=y > CONFIG_BINFMT_ELF=y > CONFIG_BINFMT_SCRIPT=y > CONFIG_MISC_FILESYSTEMS=y > CONFIG_DEVTMPFS=y > > CONFIG_MIPS_MALTA=y > CONFIG_CPU_MIPS32_R2=y > CONFIG_SERIAL_8250=y > CONFIG_SERIAL_8250_CONSOLE=y > CONFIG_PM=y > CONFIG_PCNET32=y > CONFIG_BLK_DEV_PIIX=y > EOF > > make ARCH=mips allnoconfig KCONFIG_ALLCONFIG=mini.conf > make ARCH=mips CROSS_COMPILE=blah- > > And then boot qemu with a simple initramfs: > > qemu-system-mips -M malta -nographic -no-reboot -kernel vmlinux \ > -append "console=ttyS0 panic=1" -initrd root.cpio.gz > > And then try to shut it down. Before that commit it did, after it > doesn't. (I rebuilt qemu from git this morning and that didn't help, > same behavior as last year's build. New kernel doesn't know how to tell > it to shut down, old one did.) I presume this is due to the following missing from your config: CONFIG_POWER_RESET=y CONFIG_POWER_RESET_SYSCON=y The commit added these to the Malta defconfigs, but perhaps should have selected them from CONFIG_MIPS_MALTA instead, as CONFIG_ARCH_EXYNOS does, since its pretty core functionality that didn't used to be optional? Cheers James
Attachment:
signature.asc
Description: Digital signature