From: Jing Liu <jing2.liu@linux.intel.com>
To: Sergio Lopez <slp@redhat.com>
Cc: ehabkost@redhat.com, maran.wilson@oracle.com, mst@redhat.com,
qemu-devel@nongnu.org, kraxel@redhat.com, pbonzini@redhat.com,
sgarzare@redhat.com, rth@twiddle.net
Subject: Re: [Qemu-devel] [PATCH v3 0/4] Introduce the microvm machine type
Date: Fri, 30 Aug 2019 12:53:30 +0800 [thread overview]
Message-ID: <18777980-a2ca-fe27-419b-6e2bd213dd17@linux.intel.com> (raw)
In-Reply-To: <87lfvc3rgj.fsf@redhat.com>
Hi Sergio,
On 8/29/2019 11:46 PM, Sergio Lopez wrote:
>
> Jing Liu <jing2.liu@linux.intel.com> writes:
>
>> Hi Sergio,
>>
>> The idea is interesting and I tried to launch a guest by your
>> guide but seems failed to me. I tried both legacy and normal modes,
>> but the vncviewer connected and told me that:
>> The vm has no graphic display device.
>> All the screen in vnc is just black.
>
> The microvm machine type doesn't support any graphics device, so you
> need to rely on the serial console.
Got it.
>
>> kernel config:
>> CONFIG_KVM_MMIO=y
>> CONFIG_VIRTIO_MMIO=y
>>
>> I don't know if any specified kernel version/patch/config
>> is needed or anything I missed.
>> Could you kindly give some tips?
>
> I'm testing it with upstream vanilla Linux. In addition to MMIO, you
> need to add support for PVH (the next version of this patchset, v4, will
> support booting from FW, so it'll be possible to use non-PVH ELF kernels
> and bzImages too).
>
> I've just uploaded a working kernel config here:
>
> https://gist.github.com/slp/1060ba3aaf708584572ad4109f28c8f9
>
Thanks very much and this config is helpful to me.
> As for the QEMU command line, something like this should do the trick:
>
> ./x86_64-softmmu/qemu-system-x86_64 -smp 1 -m 1g -enable-kvm -M microvm,legacy -kernel vmlinux -append "earlyprintk=ttyS0 console=ttyS0 reboot=k panic=1" -nodefaults -no-user-config -nographic -serial stdio
>
> If this works, you can move to non-legacy mode with a virtio-console:
>
> ./x86_64-softmmu/qemu-system-x86_64 -smp 1 -m 1g -enable-kvm -M microvm -kernel vmlinux -append "console=hvc0 reboot=k panic=1" -nodefaults -no-user-config -nographic -serial pty -chardev stdio,id=virtiocon0,server -device virtio-serial-device -device virtconsole,chardev=virtiocon0
>
I tried the above two ways and it works now. Thanks!
> If is still working, you can try adding some devices too:
>
> ./x86_64-softmmu/qemu-system-x86_64 -smp 1 -m 1g -enable-kvm -M microvm -kernel vmlinux -append "console=hvc0 reboot=k panic=1 root=/dev/vda" -nodefaults -no-user-config -nographic -serial pty -chardev stdio,id=virtiocon0,server -device virtio-serial-device -device virtconsole,chardev=virtiocon0 -netdev user,id=testnet -device virtio-net-device,netdev=testnet -drive id=test,file=alpine-rootfs-x86_64.raw,format=raw,if=none -device virtio-blk-device,drive=test
>
But I'm wondering why the image I used can not be found.
root=/dev/vda3 and the same image worked well on normal qemu/guest-
config bootup, but didn't work here. The details are,
-append "console=hvc0 reboot=k panic=1 root=/dev/vda3 rw rootfstype=ext4" \
[ 0.022784] Key type encrypted registered
[ 0.022988] VFS: Cannot open root device "vda3" or
unknown-block(254,3): error -6
[ 0.023041] Please append a correct "root=" boot option; here are the
available partitions:
[ 0.023089] fe00 8946688 vda
[ 0.023090] driver: virtio_blk
[ 0.023143] Kernel panic - not syncing: VFS: Unable to mount root fs
on unknown-block(254,3)
[ 0.023201] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.3.0-rc3 #23
BTW, root=/dev/vda is also tried and didn't work. The dmesg is a little
different:
[ 0.028050] Key type encrypted registered
[ 0.028484] List of all partitions:
[ 0.028529] fe00 8946688 vda
[ 0.028529] driver: virtio_blk
[ 0.028615] No filesystem could mount root, tried:
[ 0.028616] ext4
[ 0.028670]
[ 0.028712] Kernel panic - not syncing: VFS: Unable to mount root fs
on unknown-block(254,0)
I tried another ext4 img but still doesn't work.
Is there any limitation of blk image? Could I copy your image for simple
test?
Thanks in advance,
Jing
> Sergio.
>
>> Thanks very much.
>> Jing
>>
>>
>>
>>> A QEMU instance with the microvm machine type can be invoked this way:
>>>
>>> - Normal mode:
>>>
>>> qemu-system-x86_64 -M microvm -m 512m -smp 2 \
>>> -kernel vmlinux -append "console=hvc0 root=/dev/vda" \
>>> -nodefaults -no-user-config \
>>> -chardev pty,id=virtiocon0,server \
>>> -device virtio-serial-device \
>>> -device virtconsole,chardev=virtiocon0 \
>>> -drive id=test,file=test.img,format=raw,if=none \
>>> -device virtio-blk-device,drive=test \
>>> -netdev tap,id=tap0,script=no,downscript=no \
>>> -device virtio-net-device,netdev=tap0
>>>
>>> - Legacy mode:
>>>
>>> qemu-system-x86_64 -M microvm,legacy -m 512m -smp 2 \
>>> -kernel vmlinux -append "console=ttyS0 root=/dev/vda" \
>>> -nodefaults -no-user-config \
>>> -drive id=test,file=test.img,format=raw,if=none \
>>> -device virtio-blk-device,drive=test \
>>> -netdev tap,id=tap0,script=no,downscript=no \
>>> -device virtio-net-device,netdev=tap0 \
>>> -serial stdio
>>>
>
next prev parent reply other threads:[~2019-08-30 4:54 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-02 12:11 [Qemu-devel] [PATCH v3 0/4] Introduce the microvm machine type Sergio Lopez
2019-07-02 12:11 ` [Qemu-devel] [PATCH v3 1/4] hw/virtio: Factorize virtio-mmio headers Sergio Lopez
2019-07-25 9:46 ` Liam Merwick
2019-07-25 9:58 ` Michael S. Tsirkin
2019-07-25 10:03 ` Peter Maydell
2019-07-25 10:36 ` Paolo Bonzini
2019-07-02 12:11 ` [Qemu-devel] [PATCH v3 2/4] hw/i386: Add an Intel MPTable generator Sergio Lopez
2019-07-02 12:11 ` [Qemu-devel] [PATCH v3 3/4] hw/i386: Factorize PVH related functions Sergio Lopez
2019-07-23 8:39 ` Liam Merwick
2019-07-02 12:11 ` [Qemu-devel] [PATCH v3 4/4] hw/i386: Introduce the microvm machine type Sergio Lopez
2019-07-02 13:58 ` Gerd Hoffmann
2019-07-25 10:47 ` Paolo Bonzini
2019-07-02 15:01 ` [Qemu-devel] [PATCH v3 0/4] " no-reply
2019-07-02 15:23 ` Peter Maydell
2019-07-02 17:34 ` Sergio Lopez
2019-07-02 18:04 ` Peter Maydell
2019-07-02 22:04 ` Sergio Lopez
2019-07-25 9:59 ` Michael S. Tsirkin
2019-07-25 10:05 ` Peter Maydell
2019-07-25 10:10 ` Michael S. Tsirkin
2019-07-25 14:52 ` Sergio Lopez
2019-07-25 10:42 ` Sergio Lopez
2019-07-25 11:23 ` Paolo Bonzini
2019-07-25 12:01 ` Stefan Hajnoczi
2019-07-25 12:10 ` Michael S. Tsirkin
2019-07-25 13:26 ` Stefan Hajnoczi
2019-07-25 13:43 ` Paolo Bonzini
2019-07-25 13:54 ` Michael S. Tsirkin
2019-07-25 14:13 ` Paolo Bonzini
2019-07-25 14:42 ` Michael S. Tsirkin
2019-07-25 14:04 ` Peter Maydell
2019-07-25 14:26 ` Paolo Bonzini
2019-07-25 14:35 ` Michael S. Tsirkin
2019-07-25 14:42 ` Sergio Lopez
2019-07-25 14:58 ` Michael S. Tsirkin
2019-07-25 15:01 ` Michael S. Tsirkin
2019-07-25 15:39 ` Paolo Bonzini
2019-07-25 17:38 ` Michael S. Tsirkin
2019-07-26 12:46 ` Igor Mammedov
2019-07-25 15:49 ` Sergio Lopez
2019-07-25 13:48 ` Michael S. Tsirkin
2019-07-02 15:30 ` no-reply
2019-07-03 9:58 ` Stefan Hajnoczi
2019-07-18 15:21 ` Sergio Lopez
2019-07-19 10:29 ` Stefan Hajnoczi
2019-07-19 13:48 ` Sergio Lopez
2019-07-19 15:09 ` Stefan Hajnoczi
2019-07-19 15:42 ` Montes, Julio
2019-07-23 8:43 ` Sergio Lopez
2019-07-23 9:47 ` Stefan Hajnoczi
2019-07-23 10:01 ` Paolo Bonzini
2019-07-24 11:14 ` Paolo Bonzini
2019-07-25 9:35 ` Sergio Lopez
2019-07-25 10:03 ` Michael S. Tsirkin
2019-07-25 10:55 ` Paolo Bonzini
2019-07-25 14:46 ` Michael S. Tsirkin
2019-07-25 15:35 ` Paolo Bonzini
2019-07-25 17:33 ` Michael S. Tsirkin
2019-07-25 20:30 ` Michael S. Tsirkin
2019-07-26 7:57 ` Paolo Bonzini
2019-07-26 11:10 ` Michael S. Tsirkin
2019-07-23 11:30 ` Stefano Garzarella
2019-07-24 15:23 ` Stefano Garzarella
2019-08-29 9:02 ` Jing Liu
2019-08-29 15:46 ` Sergio Lopez
2019-08-30 4:53 ` Jing Liu [this message]
2019-08-30 14:27 ` Sergio Lopez
2019-09-02 5:43 ` Jing Liu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=18777980-a2ca-fe27-419b-6e2bd213dd17@linux.intel.com \
--to=jing2.liu@linux.intel.com \
--cc=ehabkost@redhat.com \
--cc=kraxel@redhat.com \
--cc=maran.wilson@oracle.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
--cc=sgarzare@redhat.com \
--cc=slp@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).