On my machine, it happens once in a while that the virtualised machine
boots too fast for the rootfs to be available at the time the kernel
tries to mount it.
For example, board/qemu/arm-vexpress/readme.txt suggested changing
"-smp 1" up to "-smp 4". But doing so here causes a kernel panic:
VFS: Cannot open root device "mmcblk0" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
1f00 131072 mtdblock0
(driver?)
1f01 32768 mtdblock1
(driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(0,0)
So, add the oh-so-useful 'rootwait' option to all kernel command lines
for qemu defconfigs.
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Joel Stanley <joel@jms.id.au>
Cc: Mark Corbin <mark.corbin@embecosm.com>
Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
All linux configs are renamed to a version neutral filename
to avoid further renaming on kernel bumps.
Defconfig Kernel Qemu Network Status
--------------------------------------------------------------
aarch64_virt 4.16.7 2.12.0 YES OK
arm_versatile 4.16.7 2.12.0 YES OK
arm_versatile_nommu 4.16.7 2.12.0 YES OK (3)
arm_vexpress 4.16.7 2.12.0 YES OK
m68k_mcf5208 4.16.7 2.12.0 YES OK
m68k_q800 4.16.7 q800-v2.11.0 NO (2) OK
microblazebe 4.16.7 2.12.0 YES OK
microblazeel 4.16.7 2.12.0 YES OK
mips32r2el_malta 4.16.7 2.12.0 YES OK
mips32r2_malta 4.16.7 2.12.0 YES OK
mips32r6el_malta 4.16.7 2.12.0 YES OK
mips32r6_malta 4.16.7 2.12.0 YES OK
mips64el_malta 4.16.7 2.12.0 YES OK
mips64_malta 4.16.7 2.12.0 YES OK
mips64r6el_malta 4.16.7 2.12.0 YES OK
mips64r6_malta 4.16.7 2.12.0 YES OK
nios2-10m50 4.16.7 2.12.0 NO OK
or1k 4.16.7 2.12.0 NO OK
ppc_g3beige 4.16.7 2.12.0 YES OK
ppc_mpc8544ds 4.16.7 2.12.0 YES OK
ppc_virtex_ml507 4.16.7 2.12.0 NO OK
ppc64_pseries 4.16.7 2.12.0 YES OK
ppc64le_pseries 4.16.7 2.12.0 YES OK
ppc64_e5500 4.16.7 2.12.0 YES OK
sh4 4.16.7 2.12.0 YES OK
sh4eb 4.16.7 2.12.0 NO (1) OK
sparc_ss10 4.16.7 2.12.0 YES OK
sparc64_sun4u 4.16.7 2.12.0 YES OK
x86 4.16.7 2.12.0 YES OK
x86_64 4.16.7 2.12.0 YES OK
xtensa_lx60 4.16.7 2.12.0 YES OK
xtensa_lx60_nommu 4.16.7 2.12.0 YES OK
(1) - Probably an endian issue with 8139 emulation/driver
(2) - There's a network interface, but enabling it in qemu fails
(3) - Kernel patch required, switched to devicetree usage
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This helps the toolchains.free-electrons.com build logic re-use
directly the Qemu command lines from this readme.txt file, by having a
-append option similar to the ones used in other readme.txt files.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Xtensa patches no longer required, the make target name changed
to Image. The Qemu binary for OpenRisc was renamed upstream.
I removed the x86->x86_64 symlink, independent files preferred.
Defconfig Kernel Qemu Network Status
--------------------------------------------------------------
aarch64_virt 4.11.3 2.9.0 YES OK
arm_versatile 4.11.3 2.9.0 YES OK
arm_versatile_nommu 4.4.70 2.9.0 YES OK
arm_vexpress 4.11.3 2.9.0 YES OK
m68k_mcf5208 4.11.3 2.9.0 YES OK
m68k_q800 4.11.3 q800-v2.4.0 NO (2) OK
microblazebe 4.11.3 2.9.0 YES OK
microblazeel 4.11.3 2.9.0 YES OK
mips32r2el_malta 4.11.3 2.9.0 YES OK
mips32r2_malta 4.11.3 2.9.0 YES OK
mips32r6el_malta 4.11.3 2.9.0 YES OK
mips32r6_malta 4.11.3 2.9.0 YES OK
mips64el_malta 4.11.3 2.9.0 YES OK
mips64_malta 4.11.3 2.9.0 YES OK
mips64r6el_malta 4.11.3 2.9.0 YES OK
mips64r6_malta 4.11.3 2.9.0 YES OK
nios2-10m50 4.11.3 2.9.0 NO OK
or1k 4.11.3 2.9.0 NO OK (5)
ppc_g3beige 4.11.3 2.9.0 YES OK
ppc_mpc8544ds 4.11.3 2.9.0 YES OK
ppc_virtex_ml507 4.9.6 2.9.0 NO OK (3)
ppc64_pseries 4.11.3 2.9.0 YES OK
sh4 4.9.6 2.9.0 YES OK (4)
sh4eb 4.9.6 2.9.0 NO (1) OK (4)
sparc_ss10 4.11.3 2.9.0 YES OK
sparc64_sun4u 4.11.3 2.9.0 YES OK
sparc_sun4u 4.11.3 2.9.0 YES OK
x86 4.11.3 2.9.0 YES OK
x86_64 4.11.3 2.9.0 YES OK
xtensa_lx60 4.11.3 2.9.0 YES OK
xtensa_lx60_nommu 4.11.3 2.9.0 YES OK
(1) - Probably an endian issue with 8139 emulation/driver
(2) - There's a network interface, but enabling it in qemu fails
(3) - Kernel oops with 4.11.3 on boot
(4) - System is extremely slow with 4.11.3, needs further investigation
(5) - Qemu binary got renamed to qemu-system-or1k
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Results table:
Defconfig Kernel Qemu Network Status
------------------------------------------------------------------
aarch64_virt 4.5.3 2.5.0 YES OK
arm_versatile 4.5.3 2.5.0 YES OK
arm_vexpress 4.5.3 2.5.0 YES OK
m68k_mcf5208 4.5.3 2.5.0 NO SO-SO (3)
m68k_q800 4.5.3 q800-v2.4.0 NO (4) OK
microblazebe 4.5.3 2.5.0 YES OK
microblazeel 4.5.3 2.5.0 YES OK
mips64el_malta 4.5.3 2.5.0 YES OK
mips64_malta 4.5.3 2.5.0 YES OK
mipsel_malta 4.5.3 2.5.0 YES OK
mips_malta 4.5.3 2.5.0 YES OK
ppc_g3beige 4.5.3 2.5.0 YES OK
ppc_mpc8544ds 4.5.3 2.5.0 YES OK
ppc_virtex_ml507 4.5.3 2.5.0 NO OK
ppc64_pseries 4.5.3 2.5.0 YES OK
sh4 4.5.3 2.5.0 YES OK
sh4eb 4.5.3 2.5.0 NO (1) OK
sparc_ss10 4.5.3 2.5.0 YES OK
sparc64_sun4u 4.5.3 2.5.0 YES OK
sparc_sun4u 4.5.3 2.5.0 YES OK
x86 4.5.3 2.5.0 YES OK
x86_64 4.5.3 2.5.0 YES OK
xtensa_lx60 4.4.9 2.5.0 YES (2) OK
xtensa_lx60_nommu 4.4.9 2.5.0 YES (2) OK
(1) - Probably an endian issue with 8139 emulation/driver
(2) - xtensa ethernet broken in 4.5
(3) - It boots, you can login, but apps exit/crash often
(4) - There's a network interface, but enabling it in qemu fails
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Specify that the drive image file format is raw to avoid warnings and
restrictions.
Also switch to -drive syntax for all configs.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
ppc-mpc8544ds: switch to custom kernel config since the new 4.3-shipped
mpc85xx_basic_defconfig doesn't work with Qemu.
Incidentally while cleaning it up it now seems to work fine with newer
qemu versions.
sparc64_sun4u: ditch ne2k driver since it's useless, and add the e1000
driver which works fine.
x86: stick to 4.2.x kernels since 4.3 doesn't work right with uclibc
(any variant) based toolchains.
Results table:
Defconfig Kernel Qemu Network Status
--------------------------------------------------------------
aarch64_virt 4.3 2.3.0 YES OK
arm_nuri 3.10.93 2.3.0 NO(1) OK(2)
arm_versatile 4.3 2.3.0 YES OK
arm_vexpress 4.3 2.3.0 YES OK
microblazebe 4.3 2.3.0 YES OK
microblazeel 4.3 2.3.0 YES OK
mips64el_malta 4.3 2.3.0 YES OK
mips64_malta 4.3 2.3.0 YES OK
mipsel_malta 4.3 2.3.0 YES OK
mips_malta 4.3 2.3.0 YES OK
ppc_g3beige 4.3 2.3.0 YES OK
ppc_mpc8544ds 4.3 2.3.0 YES OK
ppc_virtex_ml507 4.3 2.3.0 NO OK
ppc64_pseries 4.3 2.3.0 YES OK
sh4 4.3 2.3.0 YES OK
sh4eb 4.3 2.3.0 NO(1) OK
sparc_ss10 4.3 2.3.0 YES OK
sparc64_sun4u 4.3 2.3.0 YES OK
sparc_sun4u 4.3 2.3.0 YES OK
x86 4.2.6 2.3.0 YES OK(3)
x86_64 4.3 2.3.0 YES OK
xtensa_lx60 4.3 2.3.0 YES OK
(1) - Supposed to work but broken, probably Qemu emulation issue
(2) - In like 1/3 runs it fails to start properly
(3) - linux 4.3.0 doesn't like uclibc-based toolchains (net issues)
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>