All of lore.kernel.org
 help / color / mirror / Atom feed
From: Claudio Fontana <claudio.fontana@huawei.com>
To: Chao Peng <chao.p.peng@linux.intel.com>, qemu-devel@nongnu.org
Cc: Haozhong Zhang <haozhong.zhang@intel.com>,
	Xiao Guangrong <guangrong.xiao@linux.intel.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	gor Mammedov <imammedo@redhat.com>,
	Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [RFC 0/9] Introduce light weight PC platform pc-lite
Date: Sun, 19 Jun 2016 10:21:03 +0200	[thread overview]
Message-ID: <576655EF.6010908@huawei.com> (raw)
In-Reply-To: <1466151257-96318-1-git-send-email-chao.p.peng@linux.intel.com>

Hi,

On 17.06.2016 10:14, Chao Peng wrote:
> This patchset is against commit 585fcd4 (Merge remote-tracking branch
> 'remotes/bonzini/tags/for-upstream' into staging) on master branch. I
> also put it on github:
> 
> https://github.com/chao-p/qemu pc-lite-v1
>  
> Although we have run the patchset internally for a while but it is still
> considered as RFC. Any comments (coding style or design issue) are
> welcome.
> 
> Introduction
> ============
> The patch series introduces a new platform pc-lite, which is designed to
> be a virtual and light weight x86 PC platform. It is not designed to be
> compatible with old hardware and system. Instead, It removes the burden
> of legacy devices and emulates new fast hardware as much as possible. It
> is expected to be used together with optimized guest (though unoptimized
> guest works as well) to gain fast booting and small footprint benefits
> that are difficult to achieve for traditional hardware-emulated
> platform.
> 
> Basically:
> - it removes old ISA devices and support only PCI devices;
> - it removes 8259, instead use MSI as much as possible. IOAPIC and PCI
>   PIN are still kept to support ACPI SCI;
> - it supports PCIE ( you can use MMFG instead of 0xcf8/0xcfc port
>   access);
> - it gets rid of legacy firmware interfaces and supports ACPI tables;
> - it loads guest kernel directly, no BIOS, no bootloader, no realmode
>   code;
> - it supports CPU/memory/PCI hotplug;
> - it is FAST;
> 
> However:
> - it supports KVM-host only at present;
> - it supports Linux-guest only at present;
> - You may need carefully configure guest kernel;
> - You are forced to use virtio-serial-pci, old 8250/16550 is not there;
> 
> Want to have a try?
> ===================

The combination of devices removed/supported seems a bit arbitrary to me.
The use in this text of "legacy" and non-"legacy" is also arbitrary if not given a definition.

What is the use case of this new platform?

Care to share your numbers about how FAST is FAST? Like how much time you need to boot from qemu launch to the guest being booted, and on which hardware, and which guest kernel configuration?

Ciao,

Claudio

> 
> Please follow https://github.com/chao-p/qemu-lite-tools.
> 
> Thanks,
> Chao
> 
> Chao Peng (6):
>   acpi: introduce light weight ACPI PM emulation pm-lite
>   pci: introduce light weight PCIE Host emulation pci-lite
>   acpi: add support for pc-lite platform
>   pc: skip setting CMOS data when RTC device is unavailable
>   pc: support direct loading protected/long mode kernel
>   pc: introduce light weight PC board pc-lite
> 
> Haozhong Zhang (3):
>   acpi: expose data structurs and functions of BIOS linker loader
>   acpi: expose acpi_checksum()
>   acpi: patch guest ACPI for pc-lite
> 
>  default-configs/i386-softmmu.mak     |   1 +
>  default-configs/x86_64-softmmu.mak   |   1 +
>  docs/specs/acpi_cpu_hotplug.txt      |   1 +
>  hw/acpi/Makefile.objs                |   2 +-
>  hw/acpi/bios-linker-loader.c         |  83 +------
>  hw/acpi/core.c                       |   2 +-
>  hw/acpi/nvdimm.c                     |   6 +-
>  hw/acpi/pm_lite.c                    | 446 +++++++++++++++++++++++++++++++++++
>  hw/i386/Makefile.objs                |   2 +-
>  hw/i386/acpi-build.c                 | 180 +++++++++-----
>  hw/i386/pc.c                         | 263 ++++++++++++++++++---
>  hw/i386/pc_lite.c                    | 205 ++++++++++++++++
>  hw/i386/pc_lite_acpi.c               | 299 +++++++++++++++++++++++
>  hw/i386/pc_piix.c                    |   2 +
>  hw/i386/pc_q35.c                     |   2 +
>  hw/pci-host/Makefile.objs            |   1 +
>  hw/pci-host/pci_lite.c               | 259 ++++++++++++++++++++
>  include/hw/acpi/acpi.h               |   2 +
>  include/hw/acpi/bios-linker-loader.h |  85 +++++++
>  include/hw/acpi/pc-hotplug.h         |   1 +
>  include/hw/acpi/pm_lite.h            |   6 +
>  include/hw/i386/pc.h                 |  17 ++
>  include/hw/i386/pc_lite_acpi.h       |  10 +
>  23 files changed, 1697 insertions(+), 179 deletions(-)
>  create mode 100644 hw/acpi/pm_lite.c
>  create mode 100644 hw/i386/pc_lite.c
>  create mode 100644 hw/i386/pc_lite_acpi.c
>  create mode 100644 hw/pci-host/pci_lite.c
>  create mode 100644 include/hw/acpi/pm_lite.h
>  create mode 100644 include/hw/i386/pc_lite_acpi.h
> 

  parent reply	other threads:[~2016-06-19  8:21 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-17  8:14 [Qemu-devel] [RFC 0/9] Introduce light weight PC platform pc-lite Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 1/9] acpi: introduce light weight ACPI PM emulation pm-lite Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 2/9] pci: introduce light weight PCIE Host emulation pci-lite Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 3/9] acpi: add support for pc-lite platform Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 4/9] acpi: expose data structurs and functions of BIOS linker loader Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 5/9] acpi: expose acpi_checksum() Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 6/9] acpi: patch guest ACPI for pc-lite Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 7/9] pc: skip setting CMOS data when RTC device is unavailable Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 8/9] pc: support direct loading protected/long mode kernel Chao Peng
2016-06-17  8:14 ` [Qemu-devel] [RFC 9/9] pc: introduce light weight PC board pc-lite Chao Peng
2016-06-17 13:24 ` [Qemu-devel] [RFC 0/9] Introduce light weight PC platform pc-lite Paolo Bonzini
2016-06-20  6:01   ` Chao Peng
2016-06-20  6:54     ` Paolo Bonzini
2016-06-20 12:31       ` Stefan Hajnoczi
2016-06-20 13:00         ` Paolo Bonzini
2016-06-21  1:23       ` Chao Peng
2016-06-21 16:44       ` Michael S. Tsirkin
2016-06-23  8:32       ` Chao Peng
2016-06-23 12:44         ` Paolo Bonzini
2016-06-24  6:39           ` Claudio Fontana
2016-06-24  6:41             ` Claudio Fontana
2016-06-24  6:53               ` Paolo Bonzini
2016-06-27  2:55                 ` Claudio Fontana
2016-06-28  9:27           ` Chao Peng
2016-06-20 10:36   ` Dr. David Alan Gilbert
2016-06-19  3:51 ` Michael S. Tsirkin
2016-06-20  6:12   ` Chao Peng
2016-06-23 12:55     ` Daniel P. Berrange
2016-06-28 10:10       ` Chao Peng
2016-06-28 10:26         ` Daniel P. Berrange
2016-06-19  8:21 ` Claudio Fontana [this message]
2016-06-20  6:30   ` Chao Peng

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=576655EF.6010908@huawei.com \
    --to=claudio.fontana@huawei.com \
    --cc=chao.p.peng@linux.intel.com \
    --cc=ehabkost@redhat.com \
    --cc=guangrong.xiao@linux.intel.com \
    --cc=haozhong.zhang@intel.com \
    --cc=imammedo@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.