From: Paolo Bonzini <pbonzini@redhat.com>
To: Liam Merwick <liam.merwick@oracle.com>
Cc: qemu-devel@nongnu.org, sgarzare@redhat.com, maran.wilson@oracle.com
Subject: Re: [Qemu-devel] [RFC 0/3] qboot changes for PVH boot
Date: Thu, 6 Dec 2018 21:13:07 +0100 [thread overview]
Message-ID: <c7e0dcd0-11fe-9ddd-defb-78e51a59d072@redhat.com> (raw)
In-Reply-To: <1544049083-16087-1-git-send-email-liam.merwick@oracle.com>
On 05/12/18 23:31, Liam Merwick wrote:
> For certain applications it is desirable to rapidly boot a KVM virtual
> machine. In cases where legacy hardware and software support within the
> guest is not needed, QEMU should be able to boot directly into the
> uncompressed Linux kernel binary with minimal firmware involvement.
>
> There already exists an ABI to allow this for Xen PVH guests and the ABI
> is supported by Linux and FreeBSD:
>
> https://xenbits.xen.org/docs/unstable/misc/pvh.html
>
> Details on the Linux changes: https://lkml.org/lkml/2018/4/16/1002
>
> This patch series provides qboot support to populate the start_info struct
> needed by the direct boot ABI and to configure the guest e820 tables to
> enable QEMU to use that same entry point for booting KVM guests.
>
> Usіng the methods/scripts documented by the NEMU team at
>
> https://github.com/intel/nemu/wiki/Measuring-Boot-Latency
> https://lists.gnu.org/archive/html/qemu-devel/2018-12/msg00200.html
>
> below are some timings measured (vmlinux and bzImage from the same build).
> Time to get to kernel start is almost halved (95ṁs -> 48ms)
I had a few comments on patch 2, but overall it looks fine. Can you
send a pull request on GitHub?
Thanks,
Paolo
> QEMU + qboot + vmlinux (PVH + 4.20-rc4)
> qemu_init_end: 41.550521
> fw_start: 41.667139 (+0.116618)
> fw_do_boot: 47.448495 (+5.781356)
> linux_startup_64: 47.720785 (+0.27229)
> linux_start_kernel: 48.399541 (+0.678756)
> linux_start_user: 296.952056 (+248.552515)
>
> QEMU + qboot + bzImage:
> qemu_init_end: 29.209276
> fw_start: 29.317342 (+0.108066)
> linux_start_boot: 36.679362 (+7.36202)
> linux_startup_64: 94.531349 (+57.851987)
> linux_start_kernel: 94.900913 (+0.369564)
> linux_start_user: 401.060971 (+306.160058)
>
> QEMU + bzImage:
> qemu_init_end: 30.424430
> linux_startup_64: 893.770334 (+863.345904)
> linux_start_kernel: 894.17049 (+0.400156)
> linux_start_user: 1208.679768 (+314.509278)
>
>
> Liam Merwick (3):
> pvh: Add x86/HVM direct boot ABI header file
> pvh: use x86/HVM direct boot ABI
> pvh: add benchmark exit point
>
> benchmark.h | 3 +-
> fw_cfg.c | 79 +++++++++++++++++++++++++++-
> include/start_info.h | 146 +++++++++++++++++++++++++++++++++++++++++++++++++++
> linuxboot.c | 2 +-
> main.c | 3 ++
> tables.c | 9 ++++
> 6 files changed, 239 insertions(+), 3 deletions(-)
> create mode 100644 include/start_info.h
>
next prev parent reply other threads:[~2018-12-06 20:13 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-05 22:31 [Qemu-devel] [RFC 0/3] qboot changes for PVH boot Liam Merwick
2018-12-05 22:31 ` [Qemu-devel] [RFC qboot 1/3] pvh: Add x86/HVM direct boot ABI header file Liam Merwick
2018-12-05 22:31 ` [Qemu-devel] [RFC qboot 2/3] pvh: use x86/HVM direct boot ABI Liam Merwick
2018-12-06 20:12 ` Paolo Bonzini
2018-12-05 22:31 ` [Qemu-devel] [RFC qboot 3/3] pvh: add benchmark exit point Liam Merwick
2018-12-06 20:13 ` Paolo Bonzini [this message]
2018-12-07 20:15 ` [Qemu-devel] [RFC 0/3] qboot changes for PVH boot Liam Merwick
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=c7e0dcd0-11fe-9ddd-defb-78e51a59d072@redhat.com \
--to=pbonzini@redhat.com \
--cc=liam.merwick@oracle.com \
--cc=maran.wilson@oracle.com \
--cc=qemu-devel@nongnu.org \
--cc=sgarzare@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).