All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/19] xen: add pvh guest support
@ 2018-11-02 12:37 ` Juergen Gross
  0 siblings, 0 replies; 100+ messages in thread
From: Juergen Gross @ 2018-11-02 12:37 UTC (permalink / raw)
  To: grub-devel; +Cc: hans, phcoder, daniel.kiper, Juergen Gross, xen-devel

This patch series adds support for booting Linux as PVH guest.

Similar to i386/xen and x86_64/xen platforms the new i386/xenpvh
platform grub is booted as a standalone image directly by Xen.

For booting Linux kernel it is using the standard linux kernel
loader. The only modification of the linux loader is to pass the
ACPI RSDP address via boot parameters to the kernel, as that table
might not be located at the usual physical address just below 1MB.

The related Linux kernel patches have been accepted in the merge
window for post 4.19 (4.20 or 5.0, whatever it will be called).

Changes in V4:
- added new patch 12
- write modified memory map back to Xen

Changes in V3:
- addressed lots of comments, most by Daniel and some by Roger,
  details are mentioned in the individual patches

Changes in V2:
- extend linux boot protocol version 2.14 to report back the protocol
  version supported by grub2 (needed as there are grub2 downstream
  variants in some distros which clobber data after the setup_header)
- split former patch 4 into 10 patches
- fix memmap handling for >4GB of memory
- added new patch from Hans (thanks for that one)
- addressed most of Daniel's comments (see individual patches)

Hans van Kranenburg (1):
  grub-module-verifier: Ignore all_video for xenpvh

Juergen Gross (18):
  xen: add some xen headers
  loader/linux: support passing rsdp address via boot params
  xen: carve out grant tab initialization into dedicated function
  xen: prepare common code for Xen PVH support
  xen: add some dummy headers for PVH mode
  xen: rearrange xen/init.c to prepare it for Xen PVH mode
  xen: add PVH specific defines to offset.h
  xen: add basic hooks for PVH in current code
  xen: add PVH boot entry code
  xen: setup hypercall page for PVH
  xen: get memory map from hypervisor for PVH
  xen: add PCI MMIO areas to memory map
  xen: setup Xen specific data for PVH
  xen: init memory regions for PVH
  xen_pvh: add build runes for grub-core
  xen_pvh: support building a standalone image
  xen_pvh: support grub-install for xen_pvh
  xen_pvh: add support to configure

 configure.ac                          |   3 +
 gentpl.py                             |   4 +-
 grub-core/Makefile.am                 |  12 +
 grub-core/Makefile.core.def           |  36 ++
 grub-core/kern/i386/tsc.c             |   2 +-
 grub-core/kern/i386/xen/pvh.c         | 423 +++++++++++++++++++++
 grub-core/kern/i386/xen/startup_pvh.S |  81 +++++
 grub-core/kern/xen/init.c             | 101 ++++--
 grub-core/loader/i386/linux.c         |   9 +
 grub-core/mmap/i386/pc/mmap.c         |   7 -
 include/grub/i386/linux.h             |   5 +-
 include/grub/i386/memory.h            |   7 +
 include/grub/i386/pc/int.h            |  36 +-
 include/grub/i386/pc/int_types.h      |  59 +++
 include/grub/i386/tsc.h               |   2 +-
 include/grub/i386/xen/hypercall.h     |   5 +-
 include/grub/i386/xen_pvh/boot.h      |   1 +
 include/grub/i386/xen_pvh/console.h   |   1 +
 include/grub/i386/xen_pvh/int.h       |   1 +
 include/grub/i386/xen_pvh/kernel.h    |  30 ++
 include/grub/i386/xen_pvh/memory.h    |   1 +
 include/grub/i386/xen_pvh/time.h      |   1 +
 include/grub/kernel.h                 |   4 +-
 include/grub/offsets.h                |  21 +-
 include/grub/util/install.h           |   1 +
 include/grub/util/mkimage.h           |   3 +-
 include/grub/xen.h                    |   6 +
 include/xen/hvm/hvm_op.h              | 296 +++++++++++++++
 include/xen/hvm/params.h              | 284 +++++++++++++++
 include/xen/hvm/start_info.h          |  98 +++++
 include/xen/memory.h                  | 665 ++++++++++++++++++++++++++++++++++
 include/xen/physdev.h                 | 387 ++++++++++++++++++++
 include/xen/trace.h                   | 339 +++++++++++++++++
 include/xen/xen.h                     | 104 ++++--
 util/grub-install-common.c            |   1 +
 util/grub-install.c                   |   7 +
 util/grub-mkimage32.c                 |   4 +-
 util/grub-mkimage64.c                 |   4 +-
 util/grub-mkimagexx.c                 |  58 ++-
 util/grub-module-verifier.c           |   1 +
 util/mkimage.c                        |  23 +-
 41 files changed, 2990 insertions(+), 143 deletions(-)
 create mode 100644 grub-core/kern/i386/xen/pvh.c
 create mode 100644 grub-core/kern/i386/xen/startup_pvh.S
 create mode 100644 include/grub/i386/pc/int_types.h
 create mode 100644 include/grub/i386/xen_pvh/boot.h
 create mode 100644 include/grub/i386/xen_pvh/console.h
 create mode 100644 include/grub/i386/xen_pvh/int.h
 create mode 100644 include/grub/i386/xen_pvh/kernel.h
 create mode 100644 include/grub/i386/xen_pvh/memory.h
 create mode 100644 include/grub/i386/xen_pvh/time.h
 create mode 100644 include/xen/hvm/hvm_op.h
 create mode 100644 include/xen/hvm/params.h
 create mode 100644 include/xen/hvm/start_info.h
 create mode 100644 include/xen/memory.h
 create mode 100644 include/xen/physdev.h
 create mode 100644 include/xen/trace.h

-- 
2.16.4


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

^ permalink raw reply	[flat|nested] 100+ messages in thread

end of thread, other threads:[~2018-11-21 13:59 UTC | newest]

Thread overview: 100+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-02 12:37 [PATCH v4 00/19] xen: add pvh guest support Juergen Gross
2018-11-02 12:37 ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 01/19] xen: add some xen headers Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 02/19] loader/linux: support passing rsdp address via boot params Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-07 11:36   ` Daniel Kiper
2018-11-07 11:36   ` Daniel Kiper
2018-11-02 12:37 ` [PATCH v4 03/19] xen: carve out grant tab initialization into dedicated function Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 04/19] xen: prepare common code for Xen PVH support Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-07 12:10   ` Daniel Kiper
2018-11-07 12:10   ` Daniel Kiper
2018-11-02 12:37 ` [PATCH v4 05/19] xen: add some dummy headers for PVH mode Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-07 12:21   ` Daniel Kiper
2018-11-07 12:21     ` Daniel Kiper
2018-11-07 14:49     ` Juergen Gross
2018-11-08 15:36       ` Daniel Kiper
2018-11-08 15:36       ` Daniel Kiper
2018-11-08 15:40         ` Juergen Gross
2018-11-08 15:40         ` Juergen Gross
2018-11-07 14:49     ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 06/19] xen: rearrange xen/init.c to prepare it for Xen " Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 07/19] xen: add PVH specific defines to offset.h Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-07 12:27   ` Daniel Kiper
2018-11-07 12:27     ` Daniel Kiper
2018-11-02 12:37 ` [PATCH v4 08/19] xen: add basic hooks for PVH in current code Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-08 15:45   ` Daniel Kiper
2018-11-08 19:23     ` [Xen-devel] " Juergen Gross
2018-11-09 17:55       ` Daniel Kiper
2018-11-09 17:55       ` Daniel Kiper
2018-11-08 19:23     ` Juergen Gross
2018-11-08 15:45   ` Daniel Kiper
2018-11-02 12:37 ` [PATCH v4 09/19] xen: add PVH boot entry code Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-08 15:53   ` Daniel Kiper
2018-11-08 15:53   ` Daniel Kiper
2018-11-02 12:37 ` [PATCH v4 10/19] xen: setup hypercall page for PVH Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-09 18:12   ` Daniel Kiper
2018-11-09 18:12     ` Daniel Kiper
2018-11-20  9:27     ` Juergen Gross
2018-11-20  9:27       ` Juergen Gross
2018-11-21 13:58       ` Juergen Gross
2018-11-21 13:58         ` [Xen-devel] " Juergen Gross
2018-11-15  8:33   ` Roger Pau Monné
2018-11-20  9:16     ` Juergen Gross
2018-11-20  9:16     ` Juergen Gross
2018-11-15  8:33   ` Roger Pau Monné
2018-11-02 12:37 ` [PATCH v4 11/19] xen: get memory map from hypervisor " Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-09 18:35   ` Daniel Kiper
2018-11-09 18:35   ` Daniel Kiper
2018-11-15  9:36   ` [Xen-devel] " Roger Pau Monné
2018-11-21  8:52     ` Juergen Gross
2018-11-21  8:52     ` Juergen Gross
2018-11-15  9:36   ` Roger Pau Monné
2018-11-02 12:37 ` [PATCH v4 12/19] xen: add PCI MMIO areas to memory map Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-09 19:14   ` Daniel Kiper
2018-11-14 12:49     ` Roger Pau Monné
2018-11-14 12:49       ` [Xen-devel] " Roger Pau Monné
2018-11-14 15:30       ` Daniel Kiper
2018-11-14 15:30       ` Daniel Kiper
2018-11-09 19:14   ` Daniel Kiper
2018-11-14 12:48   ` Roger Pau Monné
2018-11-14 12:48     ` [Xen-devel] " Roger Pau Monné
2018-11-21  9:02     ` Juergen Gross
2018-11-21  9:02     ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 13/19] xen: setup Xen specific data for PVH Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-09 19:47   ` Daniel Kiper
2018-11-09 19:47   ` Daniel Kiper
2018-11-15 10:03   ` [Xen-devel] " Roger Pau Monné
2018-11-21  9:07     ` Juergen Gross
2018-11-21  9:07     ` Juergen Gross
2018-11-15 10:03   ` Roger Pau Monné
2018-11-02 12:37 ` [PATCH v4 14/19] xen: init memory regions " Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-09 19:56   ` Daniel Kiper
2018-11-09 19:56   ` Daniel Kiper
2018-11-15 10:07   ` Roger Pau Monné
2018-11-15 10:07     ` [Xen-devel] " Roger Pau Monné
2018-11-02 12:37 ` [PATCH v4 15/19] xen_pvh: add build runes for grub-core Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 16/19] grub-module-verifier: Ignore all_video for xenpvh Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 17/19] xen_pvh: support building a standalone image Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-09 20:06   ` Daniel Kiper
2018-11-09 20:06   ` Daniel Kiper
2018-11-02 12:37 ` [PATCH v4 18/19] xen_pvh: support grub-install for xen_pvh Juergen Gross
2018-11-02 12:37   ` Juergen Gross
2018-11-02 12:37 ` [PATCH v4 19/19] xen_pvh: add support to configure Juergen Gross
2018-11-02 12:37   ` Juergen Gross

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.