* [PATCH 0/2] qemuarm enable virtio devices
@ 2015-09-29 22:51 Aníbal Limón
2015-09-29 22:51 ` [PATCH 1/2] linux-yocto_{3.14, 3.19, 4.1}: qemuarm enable virtio drivers Aníbal Limón
2015-09-29 22:51 ` [PATCH 2/2] runqemu-internal: qemuarm enable usage of virtio devices Aníbal Limón
0 siblings, 2 replies; 4+ messages in thread
From: Aníbal Limón @ 2015-09-29 22:51 UTC (permalink / raw)
To: openembedded-core; +Cc: bruce.ashfield, benjamin.esquivel
Use virtio block device into qemuarm for avoid qemu SCSI device problem that
is broken.
I tested (ran testimage) this patches using core-image-sato and core-image-lsb
with kernels 3.14, 3.19 and 4.1.
[YOCTO #8060]
The following changes since commit f78f90240a3041be426c6ba9085849352164ee8b:
bitbake: prserv/serv.py: Better messaging when starting/stopping the server with port=0 (2015-09-28 12:00:33 +0100)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib alimon/qemuarm_virtio
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=alimon/qemuarm_virtio
Aníbal Limón (2):
linux-yocto_{3.14,3.19,4.1}: qemuarm enable virtio drivers
runqemu-internal: qemuarm enable usage of virtio devices
meta/recipes-kernel/linux/linux-yocto_3.14.bb | 1 +
meta/recipes-kernel/linux/linux-yocto_3.19.bb | 1 +
meta/recipes-kernel/linux/linux-yocto_4.1.bb | 1 +
scripts/runqemu-internal | 14 ++++++++++++--
4 files changed, 15 insertions(+), 2 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 4+ messages in thread* [PATCH 1/2] linux-yocto_{3.14, 3.19, 4.1}: qemuarm enable virtio drivers 2015-09-29 22:51 [PATCH 0/2] qemuarm enable virtio devices Aníbal Limón @ 2015-09-29 22:51 ` Aníbal Limón 2015-09-30 3:59 ` Bruce Ashfield 2015-09-29 22:51 ` [PATCH 2/2] runqemu-internal: qemuarm enable usage of virtio devices Aníbal Limón 1 sibling, 1 reply; 4+ messages in thread From: Aníbal Limón @ 2015-09-29 22:51 UTC (permalink / raw) To: openembedded-core; +Cc: bruce.ashfield, benjamin.esquivel We are experimenting segfault in qemu arm SCSI driver because it's broken [1][2] so enable virtio drivers to use as default. [YOCTO #8060] [1] https://lists.gnu.org/archive/html/qemu-devel/2007-03/msg00093.html [2] https://lists.nongnu.org/archive/html/qemu-devel/2010-07/msg01473.html Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> --- meta/recipes-kernel/linux/linux-yocto_3.14.bb | 1 + meta/recipes-kernel/linux/linux-yocto_3.19.bb | 1 + meta/recipes-kernel/linux/linux-yocto_4.1.bb | 1 + 3 files changed, 3 insertions(+) diff --git a/meta/recipes-kernel/linux/linux-yocto_3.14.bb b/meta/recipes-kernel/linux/linux-yocto_3.14.bb index b6b2e5a..0a37cb6 100644 --- a/meta/recipes-kernel/linux/linux-yocto_3.14.bb +++ b/meta/recipes-kernel/linux/linux-yocto_3.14.bb @@ -36,6 +36,7 @@ COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemu # Functionality flags KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" +KERNEL_FEATURES_append_qemuarm=" cfg/virtio.scc" KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "" ,d)}" diff --git a/meta/recipes-kernel/linux/linux-yocto_3.19.bb b/meta/recipes-kernel/linux/linux-yocto_3.19.bb index e8c1640..4143a09 100644 --- a/meta/recipes-kernel/linux/linux-yocto_3.19.bb +++ b/meta/recipes-kernel/linux/linux-yocto_3.19.bb @@ -36,6 +36,7 @@ COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemu # Functionality flags KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" +KERNEL_FEATURES_append_qemuarm=" cfg/virtio.scc" KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "" ,d)}" diff --git a/meta/recipes-kernel/linux/linux-yocto_4.1.bb b/meta/recipes-kernel/linux/linux-yocto_4.1.bb index 0645134..f27e0de 100644 --- a/meta/recipes-kernel/linux/linux-yocto_4.1.bb +++ b/meta/recipes-kernel/linux/linux-yocto_4.1.bb @@ -36,6 +36,7 @@ COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemu # Functionality flags KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" +KERNEL_FEATURES_append_qemuarm=" cfg/virtio.scc" KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "" ,d)}" -- 1.9.1 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 1/2] linux-yocto_{3.14, 3.19, 4.1}: qemuarm enable virtio drivers 2015-09-29 22:51 ` [PATCH 1/2] linux-yocto_{3.14, 3.19, 4.1}: qemuarm enable virtio drivers Aníbal Limón @ 2015-09-30 3:59 ` Bruce Ashfield 0 siblings, 0 replies; 4+ messages in thread From: Bruce Ashfield @ 2015-09-30 3:59 UTC (permalink / raw) To: Aníbal Limón, openembedded-core; +Cc: benjamin.esquivel On 2015-09-29 6:51 PM, Aníbal Limón wrote: > We are experimenting segfault in qemu arm SCSI driver because > it's broken [1][2] so enable virtio drivers to use as default. This looks fine to me, and is consistent with the other features we are enabling for the default qemu* machines. What (if any) message is thrown by a kernel that isn't configured with these features ? I suppose that since we aren't NFS booting, you simply don't have ethernet, and the user can look at the target's kernel config to diagnose that issue. Cheers, Bruce > > [YOCTO #8060] > > [1] https://lists.gnu.org/archive/html/qemu-devel/2007-03/msg00093.html > [2] https://lists.nongnu.org/archive/html/qemu-devel/2010-07/msg01473.html > > Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> > --- > meta/recipes-kernel/linux/linux-yocto_3.14.bb | 1 + > meta/recipes-kernel/linux/linux-yocto_3.19.bb | 1 + > meta/recipes-kernel/linux/linux-yocto_4.1.bb | 1 + > 3 files changed, 3 insertions(+) > > diff --git a/meta/recipes-kernel/linux/linux-yocto_3.14.bb b/meta/recipes-kernel/linux/linux-yocto_3.14.bb > index b6b2e5a..0a37cb6 100644 > --- a/meta/recipes-kernel/linux/linux-yocto_3.14.bb > +++ b/meta/recipes-kernel/linux/linux-yocto_3.14.bb > @@ -36,6 +36,7 @@ COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemu > # Functionality flags > KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" > KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" > +KERNEL_FEATURES_append_qemuarm=" cfg/virtio.scc" > KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" > KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" > KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "" ,d)}" > diff --git a/meta/recipes-kernel/linux/linux-yocto_3.19.bb b/meta/recipes-kernel/linux/linux-yocto_3.19.bb > index e8c1640..4143a09 100644 > --- a/meta/recipes-kernel/linux/linux-yocto_3.19.bb > +++ b/meta/recipes-kernel/linux/linux-yocto_3.19.bb > @@ -36,6 +36,7 @@ COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemu > # Functionality flags > KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" > KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" > +KERNEL_FEATURES_append_qemuarm=" cfg/virtio.scc" > KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" > KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" > KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "" ,d)}" > diff --git a/meta/recipes-kernel/linux/linux-yocto_4.1.bb b/meta/recipes-kernel/linux/linux-yocto_4.1.bb > index 0645134..f27e0de 100644 > --- a/meta/recipes-kernel/linux/linux-yocto_4.1.bb > +++ b/meta/recipes-kernel/linux/linux-yocto_4.1.bb > @@ -36,6 +36,7 @@ COMPATIBLE_MACHINE = "qemuarm|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemu > # Functionality flags > KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc" > KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" > +KERNEL_FEATURES_append_qemuarm=" cfg/virtio.scc" > KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc" > KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc" > KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "" ,d)}" > ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 2/2] runqemu-internal: qemuarm enable usage of virtio devices 2015-09-29 22:51 [PATCH 0/2] qemuarm enable virtio devices Aníbal Limón 2015-09-29 22:51 ` [PATCH 1/2] linux-yocto_{3.14, 3.19, 4.1}: qemuarm enable virtio drivers Aníbal Limón @ 2015-09-29 22:51 ` Aníbal Limón 1 sibling, 0 replies; 4+ messages in thread From: Aníbal Limón @ 2015-09-29 22:51 UTC (permalink / raw) To: openembedded-core; +Cc: bruce.ashfield, benjamin.esquivel We are experiencing occasional segfaults in scsi sym53c8xx driver on qemuarm boot. There are some old discussions into the mailing lists [1] about the scsi problem and seems to be isn't fixed. We use virtio blk/net devices into qemuarm64 also are supported into qemuarm so change to use it because virtio devices are the best choice. [YOCTO #8060] [1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=8060#c10 Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> --- scripts/runqemu-internal | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal index d6b1102..a77660f 100755 --- a/scripts/runqemu-internal +++ b/scripts/runqemu-internal @@ -364,8 +364,18 @@ if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "qemuarmv6" -o "$MACHINE" = "qemuarm QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS" # QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS -force-pointer" if [ "${FSTYPE:0:3}" = "ext" -o "$FSTYPE" = "btrfs" ]; then - KERNCMDLINE="root=/dev/sda rw console=ttyAMA0,115200 console=tty $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY highres=off" - QEMUOPTIONS="$QEMU_NETWORK_CMD -M ${MACHINE_SUBTYPE} -drive file=$ROOTFS,format=raw -no-reboot $QEMU_UI_OPTIONS" + if [ "$MACHINE" = "qemuarm" ]; then + QEMU_NETWORK_CMD="-net nic,model=virtio $QEMU_TAP_CMD" + DROOT="/dev/vda" + ROOTFS_OPTIONS="-drive file=$ROOTFS,if=virtio,format=raw" + else + QEMU_NETWORK_CMD="-net nic,vlan=0 $QEMU_TAP_CMD" + DROOT="/dev/sda" + ROOTFS_OPTIONS="-drive file=$ROOTFS,format=raw" + fi + + KERNCMDLINE="root=$DROOT rw console=ttyAMA0,115200 console=tty $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY highres=off" + QEMUOPTIONS="$QEMU_NETWORK_CMD -M ${MACHINE_SUBTYPE} $ROOTFS_OPTIONS -no-reboot $QEMU_UI_OPTIONS" fi if [ "$FSTYPE" = "nfs" ]; then if [ "$NFS_SERVER" = "192.168.7.1" -a ! -d "$NFS_DIR" ]; then -- 1.9.1 ^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-09-30 3:59 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-29 22:51 [PATCH 0/2] qemuarm enable virtio devices Aníbal Limón
2015-09-29 22:51 ` [PATCH 1/2] linux-yocto_{3.14, 3.19, 4.1}: qemuarm enable virtio drivers Aníbal Limón
2015-09-30 3:59 ` Bruce Ashfield
2015-09-29 22:51 ` [PATCH 2/2] runqemu-internal: qemuarm enable usage of virtio devices Aníbal Limón
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox