Re: [RFC] KVM on arm64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I have managed to boot Guest on foundation model using kvmtool (with host .config and dts posted by Marc in this thread)

You can try following command to see if guest boots or not -
"#./lkvm run -k Image -m 128 -c 1 --console virtio"

Image -> It is the same Image using which my host has booted.

Thanks,
Pranav



On 11 January 2013 16:26, Marc Zyngier <marc.zyngier@xxxxxxx> wrote:
On 10/01/13 06:58, xiangyou xie wrote:
> Hi Marc:
>
>        I have tried your kvm-arm64/soc-armv8-kvm branch. Host boot
> successfully, but it’s failed to run guest, I don’t know what’s wrong
> with it. The following is the detail of my implementation:
>
> (1)    The code is from
> git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git
> <https://email-cn.huawei.com/owa/redir.aspx?C=bb801de808eb45e6a9a2c865fd4007cb&URL="">>

Which branch?

> (2)    The FastModels is FastModels_atlas_0.8, and the model is Atlasx4

As mentioned in the post you quoted, this has only been tested on the VE
model and the Foundation model. I suggest you start by using one of those.

> (3)    Vexpress-v2p-aarch64.dts for host and guest(guest use the same
> kernel Image as host).

This DT doesn't mean a thing for the guest. Kvmtool is providing its own
DT to the guest anyway.

> (4)    I use kvm tool to boot guest, the command line is:
>
> #lkvm run –kernel Image -c 4 -m 512 –initrd filesystem.cpio.gz –dump-dtb
> vexpress-v2p-aarch64.dtb -p “rdinit=/linuxrc console=ttyAMA0 mem=512M
> root=/dev/ram”

Well, kvmtool doesn't provide any non-virtio device. For a start, you
should have "console=hvc0" instead of "console=ttyAMA0". You can also
add "early_printk=smh". "mem=512" is superfluous.

You don't need the --dump-dtb option unless you're debugging kvmtool.

> What’s wrong with my steps or is something missing? Your reply and
> suggestion will be very helpful. Thanks.

My suggestion is that you start with a known, tested configuration/model
(see the configuration I posted a few days ago in response to a similar
question).

        M.
>
> 2012/12/19 Marc Zyngier <
marc.zyngier@xxxxxxx <mailto:marc.zyngier@xxxxxxx>>
>
>     As I'm about to go in turkey mode for a few days, I thought it would
>     be good to let people have a taste of KVM on arm64. At least for those
>     who are not following the same path...
>
>     So this is the first public drop of KVM/arm64. It supports:
>     - arm and arm64 guests
>     - SMP host and guest
>     - 4kB and 64kB pages (both as a host and as a guest)
>     - Virtual GIC
>     - Architected timers
>
>     It has been tested on ARMv8 VE model as well as the Foundation Model
>     (after reworking the DTS), using Will Deacon's excellent port of
>     kvmtool to arm64 for the platform emulation side (with virtio for
>     console, block device, networking...). We happily booted guests using
>     the Linaro OE filesystem (64bit) as well Debian and Ubuntu (32bit).
>
>     It reuses a fair amount of the KVM/arm port source code and general
>     architecture, though there still some work to be done in order to
>     share more code. It currently relies on so much out of tree code that
>     I'm not even trying to post the patches, hence merely signaling the
>     existence of the port.
>
>     The code sits in a number of (non-stable) branches at
>     git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git
>     <http://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git>
>
>     - kvm-arm64/pre-arm64-cleanup: Christoffer Dall's kvm-arm-master
>       branch plus a number of patches reorganizing some parts of the
>       KVM/arm code in order to reuse them on arm64.
>
>     - kvm-arm64/psci: the above, plus the implementation of the Power
>       State Coordination Interface
>
>     - kvm-arm64/soc-armv8-kvm: a merge of Catalin Marinas' soc-armv8-model
>       branch and the above.
>
>     - kvm-arm64/soc-armv8-kvm-prereq: the above, plus a bunch of patches
>       adding the KVM prerequisites (including an architected timer rework
>       courtesy of Mark Rutland).
>
>     - kvm-arm64/soc-armv8-kvm-arm64: The turkey itself.
>
>     - kvm-arm64/kvmtool: The above, with stuffing, vegs and gravy. Enjoy.
>
>     The soc-armv8-kvm-arm64 branch contains patches that are roughly split
>     by theme (world switch, MMU, exit handling...), but does not yet
>     reflect the way I intend to split them before review.
>
>     The code is currently based on v3.7 + kvm-next. Don't try it if you're
>     not prepared to tinker with what is essentially experimental, fast
>     changing and probably broken code (though my tests seem to show that
>     it is solid enough. YMMV).
>
>     What is missing:
>     - FP access from userspace
>     - COMPAT layer for 32bit userspace
>
>     As always, comments are welcome, though I may be a bit slow to reply...
>
>             M.
>     --
>     Jazz is not dead. It just smells funny...
>
>
>     _______________________________________________
>     kvmarm mailing list
>     kvmarm@xxxxxxxxxxxxxxxxxxxxx <mailto:kvmarm@xxxxxxxxxxxxxxxxxxxxx>
>     https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm
>
>


--
Jazz is not dead. It just smells funny...


_______________________________________________
kvmarm mailing list
kvmarm@xxxxxxxxxxxxxxxxxxxxx
https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm

_______________________________________________
kvmarm mailing list
kvmarm@xxxxxxxxxxxxxxxxxxxxx
https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm

[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux