xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
To: xen-devel@lists.xen.org
Cc: wei.liu2@citrix.com, andrew.cooper3@citrix.com,
	ian.jackson@eu.citrix.com, jbeulich@suse.com,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	roger.pau@citrix.com
Subject: [PATCH v4 00/15] PVH VCPU hotplug support
Date: Tue, 29 Nov 2016 10:33:07 -0500	[thread overview]
Message-ID: <1480433602-13290-1-git-send-email-boris.ostrovsky@oracle.com> (raw)

This series adds support for ACPI-based VCPU hotplug for unprivileged
PVH guests.

Changes in v4:
* Replaced XEN_DOMCTL_set_avail_vcpus with XEN_DOMCTL_acpi_access,
  toolstack is expected to issue two ACPI "writes" to trigger the hotplug
* Moved pm1a registers from PMTState to hvm_domain. gpe0 registers are
  added there.
* Both pm1a and gpe0 registers are now represented as uint16_t for status
  and enable (and as result no new public macros for those registers' length
  are needed). Ths is partly to avoid changes in HVM code (i.e. pmtimer)
  and partly to simplify code. I don't expect larger registers will be
  needed any time soon.
* ACPI handling now lives in xen/arch/x86/hvm/acpi.c
* Moved definition of XEN_ACPI_CPU_MAP/XEN_GPE0_CPUHP_BIT from ioreq.h
  to public/arch-x86/xen.h. This is the best I could come up with but
  ioreq is the wrong place, now that everything happens in acpi.c
* Reordered some patches


Boris Ostrovsky (15):
  x86/pmtimer: Move ACPI registers from PMTState to hvm_domain
  acpi: Make pmtimer optional in FADT
  acpi: Power and Sleep ACPI buttons are not emulated for PVH guests
  acpi: PVH guests need _E02 method
  acpi/x86: Define ACPI IO registers for PVH guests
  domctl: Add XEN_DOMCTL_acpi_access
  pvh/acpi: Install handlers for ACPI-related PVH IO accesses
  pvh/acpi: Handle ACPI accesses for PVH guests
  x86/domctl: Handle ACPI access from domctl
  events/x86: Define SCI virtual interrupt
  pvh: Send an SCI on VCPU hotplug event
  tools: Call XEN_DOMCTL_acpi_access on PVH VCPU hotplug
  pvh: Set online VCPU map to avail_vcpus
  pvh/acpi: Save ACPI registers for PVH guests
  docs: Describe PVHv2's VCPU hotplug procedure

 docs/misc/hvmlite.markdown             |  13 ++
 tools/firmware/hvmloader/util.c        |   4 +-
 tools/libacpi/build.c                  |   7 +
 tools/libacpi/libacpi.h                |   2 +
 tools/libacpi/mk_dsdt.c                |  17 ++-
 tools/libacpi/static_tables.c          |   4 +
 tools/libxc/include/xenctrl.h          |  20 +++
 tools/libxc/xc_domain.c                |  36 ++++++
 tools/libxl/libxl.c                    |   8 +-
 tools/libxl/libxl_arch.h               |   4 +
 tools/libxl/libxl_arm.c                |   6 +
 tools/libxl/libxl_x86.c                |  21 +++
 tools/libxl/libxl_x86_acpi.c           |   6 +-
 tools/misc/xen-hvmctx.c                |   4 +-
 xen/arch/x86/domctl.c                  |   9 ++
 xen/arch/x86/hvm/Makefile              |   1 +
 xen/arch/x86/hvm/acpi.c                | 225 +++++++++++++++++++++++++++++++++
 xen/arch/x86/hvm/hvm.c                 |   2 +
 xen/arch/x86/hvm/pmtimer.c             |  75 +++++++----
 xen/common/domctl.c                    |   5 +
 xen/common/event_channel.c             |   7 +-
 xen/include/asm-x86/domain.h           |   2 +
 xen/include/asm-x86/hvm/domain.h       |   6 +
 xen/include/asm-x86/hvm/vpt.h          |   1 -
 xen/include/public/arch-x86/hvm/save.h |   8 +-
 xen/include/public/arch-x86/xen.h      |  14 +-
 xen/include/public/domctl.h            |  25 ++++
 xen/include/xen/domain.h               |   1 +
 xen/include/xen/event.h                |   8 ++
 xen/include/xen/sched.h                |   3 +
 30 files changed, 498 insertions(+), 46 deletions(-)
 create mode 100644 xen/arch/x86/hvm/acpi.c


-- 
2.7.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

             reply	other threads:[~2016-11-29 15:33 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-29 15:33 Boris Ostrovsky [this message]
2016-11-29 15:33 ` [PATCH v4 01/15] x86/pmtimer: Move ACPI registers from PMTState to hvm_domain Boris Ostrovsky
2016-12-01 15:52   ` Jan Beulich
2016-12-01 16:28     ` Boris Ostrovsky
2016-12-01 16:29       ` Andrew Cooper
2016-12-01 16:45         ` Boris Ostrovsky
2016-12-12 16:24   ` Wei Liu
2016-11-29 15:33 ` [PATCH v4 02/15] acpi: Make pmtimer optional in FADT Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 03/15] acpi: Power and Sleep ACPI buttons are not emulated for PVH guests Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 04/15] acpi: PVH guests need _E02 method Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 05/15] acpi/x86: Define ACPI IO registers for PVH guests Boris Ostrovsky
2016-12-01 15:57   ` Jan Beulich
2016-12-01 16:30     ` Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 06/15] domctl: Add XEN_DOMCTL_acpi_access Boris Ostrovsky
2016-12-01 16:06   ` Jan Beulich
2016-12-01 16:43     ` Boris Ostrovsky
2016-12-02  7:48       ` Jan Beulich
2016-12-12 13:08         ` Boris Ostrovsky
2016-12-12 14:02           ` Jan Beulich
2016-12-12 16:19             ` Boris Ostrovsky
2016-12-12 16:24               ` Jan Beulich
2016-12-12 13:28   ` Julien Grall
2016-12-12 16:11     ` Boris Ostrovsky
2016-12-13 13:02       ` Julien Grall
2016-11-29 15:33 ` [PATCH v4 07/15] pvh/acpi: Install handlers for ACPI-related PVH IO accesses Boris Ostrovsky
2016-12-01 16:32   ` Jan Beulich
2016-12-01 17:03     ` Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 08/15] pvh/acpi: Handle ACPI accesses for PVH guests Boris Ostrovsky
2016-12-06 14:34   ` Jan Beulich
2016-12-06 16:37     ` Boris Ostrovsky
2016-12-07  8:06       ` Jan Beulich
2016-11-29 15:33 ` [PATCH v4 09/15] x86/domctl: Handle ACPI access from domctl Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 10/15] events/x86: Define SCI virtual interrupt Boris Ostrovsky
2016-12-06 14:36   ` Jan Beulich
2016-11-29 15:33 ` [PATCH v4 11/15] pvh: Send an SCI on VCPU hotplug event Boris Ostrovsky
2016-12-06 14:50   ` Jan Beulich
2016-12-06 16:43     ` Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 12/15] tools: Call XEN_DOMCTL_acpi_access on PVH VCPU hotplug Boris Ostrovsky
2016-12-12 16:35   ` Wei Liu
2016-12-12 16:47     ` Boris Ostrovsky
2016-12-12 16:50       ` Boris Ostrovsky
2016-12-12 17:09         ` Wei Liu
2016-12-12 17:14           ` Boris Ostrovsky
2016-12-12 17:13             ` Wei Liu
2016-11-29 15:33 ` [PATCH v4 13/15] pvh: Set online VCPU map to avail_vcpus Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 14/15] pvh/acpi: Save ACPI registers for PVH guests Boris Ostrovsky
2016-11-29 15:33 ` [PATCH v4 15/15] docs: Describe PVHv2's VCPU hotplug procedure Boris Ostrovsky
2016-12-06 20:55   ` Konrad Rzeszutek Wilk
2016-11-29 16:11 ` [PATCH v4 00/15] PVH VCPU hotplug support Jan Beulich
2016-11-29 16:40   ` Boris Ostrovsky
2016-11-29 16:43     ` Jan Beulich
2016-11-29 17:00       ` Boris Ostrovsky

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=1480433602-13290-1-git-send-email-boris.ostrovsky@oracle.com \
    --to=boris.ostrovsky@oracle.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=jbeulich@suse.com \
    --cc=roger.pau@citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xen.org \
    /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).