All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/17] Hi all
@ 2018-10-04 15:43 Wei Liu
  2018-10-04 15:43 ` [PATCH 01/17] x86/shadow: put PV L1TF functions under CONFIG_PV Wei Liu
                   ` (16 more replies)
  0 siblings, 17 replies; 50+ messages in thread
From: Wei Liu @ 2018-10-04 15:43 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

This series makes CONFIG_PV work.

Booting a hypervisor with PVH Dom0 works. It also creates / destroys HVM guests
just fine.

Due to issues in PVH implementation, XTF tests cause hypervisor to crash (seen
on staging as well).

root@lcy2-dt108:~# xl info
host                   : lcy2-dt108
release                : 4.18.0-0.bpo.1-amd64
version                : #1 SMP Debian 4.18.6-1~bpo9+1 (2018-09-13)
machine                : x86_64
nr_cpus                : 8
max_cpu_id             : 7
nr_nodes               : 1
cores_per_socket       : 4
threads_per_core       : 2
cpu_mhz                : 3504.048
hw_caps                : bfebfbff:77faf3ff:2c100800:00000121:0000000f:009c6fbf:00000000:00000100
virt_caps              : hvm hvm_directio directio
total_memory           : 32589
free_memory            : 28096
sharing_freed_memory   : 0
sharing_used_memory    : 0
outstanding_claims     : 0
free_cpus              : 0
xen_major              : 4
xen_minor              : 12
xen_extra              : -unstable
xen_version            : 4.12-unstable
xen_caps               : hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
xen_scheduler          : credit
xen_pagesize           : 4096
platform_params        : virt_start=0xffff800000000000
xen_changeset          : Thu Oct 4 13:33:09 2018 +0100 git:c04e54f5e5
xen_commandline        : placeholder loglvl=all guest_loglvl=all com2=115200,8n1 ucode=scan console=com2, vga console_to_ring sync_console hvm_fep dom0_mem=4096M dom0=pvh noreboot
cc_compiler            : gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
cc_compile_by          : wei
cc_compile_domain      : uk.xensource.com
cc_compile_date        : Thu Oct  4 13:33:27 BST 2018
build_id               : 46468926f8c4d81959d5921df3a923dccdf953f9
xend_config_format     : 4

Some numbers about size of different builds with this series:

Non-debug builds.

No HVM, no PV:
-rwxrwxr-x 1 wei wei 1814076 Oct  4 16:17 xen

No PV:
-rwxrwxr-x 1 wei wei 2272892 Oct  4 16:19 xen

No HVM:
-rwxrwxr-x 1 wei wei 1916476 Oct  4 16:22 xen

Full:
-rwxrwxr-x 1 wei wei 2383484 Oct  4 16:20 xen

Wei.

Wei Liu (17):
  x86/shadow: put PV L1TF functions under CONFIG_PV
  x86/mm: make mm.c build with !CONFIG_PV
  x86: turn is_pv_{,32bit_}{domain,vcpu} into inline functions
  x86: introduce is_pv_64bit_{vcpu,domain}
  x86: make x86_64/traps.c build with !CONFIG_PV
  x86: provide stub for arch_do_multicall_call
  x86/traps: put PV code handlers under CONFIG_PV
  x86: make construct_dom0 build with !CONFIG_PV
  x86/amd: put setting pv_post_outb_hook under CONFIG_PV
  x86: provide stub for switch_compat
  x86: provide stubs for entry point
  x86: connect guest creation with CONFIG_PV
  x86: don't create Dom0 if neither PV nor HVM is available
  x86: don't report PV support when !CONFIG_PV
  x86: expose CONFIG_PV
  x86: introduce new defconfigs for PV and HVM
  automation: build Xen with CONFIG_PV and CONFIG_HVM explicitly set

 automation/scripts/build                 | 18 ++++++++-
 xen/arch/x86/Kconfig                     |  8 ++++-
 xen/arch/x86/configs/hvm_only_defconfig  |  2 +-
 xen/arch/x86/configs/no_hvm_pv_defconfig |  2 +-
 xen/arch/x86/configs/pv_only_defconfig   |  2 +-
 xen/arch/x86/cpu/amd.c                   |  4 ++-
 xen/arch/x86/dom0_build.c                | 12 ++++-
 xen/arch/x86/hypercall.c                 |  9 ++++-
 xen/arch/x86/mm.c                        | 55 ++++++++++++++++++++-----
 xen/arch/x86/setup.c                     | 21 ++++++++--
 xen/arch/x86/traps.c                     | 38 +++++++++++++++++-
 xen/arch/x86/x86_64/Makefile             |  5 ++-
 xen/arch/x86/x86_64/no-pv.c              | 41 +++++++++++++++++++-
 xen/arch/x86/x86_64/traps.c              |  6 ++-
 xen/common/domain.c                      | 21 +++++++++-
 xen/include/asm-x86/domain.h             |  2 +-
 xen/include/asm-x86/hypercall.h          |  3 +-
 xen/include/asm-x86/shadow.h             |  4 ++-
 xen/include/xen/compat.h                 |  9 ++++-
 xen/include/xen/sched.h                  | 31 +++++++++++++-
 20 files changed, 269 insertions(+), 24 deletions(-)
 create mode 100644 xen/arch/x86/configs/hvm_only_defconfig
 create mode 100644 xen/arch/x86/configs/no_hvm_pv_defconfig
 create mode 100644 xen/arch/x86/configs/pv_only_defconfig
 create mode 100644 xen/arch/x86/x86_64/no-pv.c

base-commit: 74584a367051bc0d6f4b96fd360fa7bc6538fc39
-- 
git-series 0.9.1

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

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

end of thread, other threads:[~2018-10-29 11:42 UTC | newest]

Thread overview: 50+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-10-04 15:43 [PATCH 00/17] Hi all Wei Liu
2018-10-04 15:43 ` [PATCH 01/17] x86/shadow: put PV L1TF functions under CONFIG_PV Wei Liu
2018-10-08 15:38   ` Jan Beulich
2018-10-04 15:43 ` [PATCH 02/17] x86/mm: make mm.c build with !CONFIG_PV Wei Liu
2018-10-08 16:00   ` Jan Beulich
2018-10-04 15:43 ` [PATCH 03/17] x86: turn is_pv_{, 32bit_}{domain, vcpu} into inline functions Wei Liu
2018-10-12 13:46   ` Jan Beulich
2018-10-04 15:43 ` [PATCH 04/17] x86: introduce is_pv_64bit_{vcpu, domain} Wei Liu
2018-10-12 13:48   ` Jan Beulich
2018-10-04 15:43 ` [PATCH 05/17] x86: make x86_64/traps.c build with !CONFIG_PV Wei Liu
2018-10-12 13:52   ` Jan Beulich
2018-10-04 15:43 ` [PATCH 06/17] x86: provide stub for arch_do_multicall_call Wei Liu
2018-10-12 13:56   ` Jan Beulich
2018-10-04 15:43 ` [PATCH 07/17] x86/traps: put PV code handlers under CONFIG_PV Wei Liu
2018-10-12 14:08   ` Jan Beulich
2018-10-16 16:47     ` Wei Liu
2018-10-04 15:43 ` [PATCH 08/17] x86: make construct_dom0 build with !CONFIG_PV Wei Liu
2018-10-12 14:12   ` Jan Beulich
2018-10-04 15:43 ` [PATCH 09/17] x86/amd: put setting pv_post_outb_hook under CONFIG_PV Wei Liu
2018-10-12 14:14   ` Jan Beulich
2018-10-15 11:19     ` Roger Pau Monné
2018-10-25  9:22       ` Jan Beulich
2018-10-26 20:21         ` Woods, Brian
2018-10-29 11:41         ` Roger Pau Monné
2018-10-04 15:43 ` [PATCH 10/17] x86: provide stub for switch_compat Wei Liu
2018-10-12 14:33   ` Jan Beulich
2018-10-12 14:36     ` Wei Liu
2018-10-04 15:43 ` [PATCH 11/17] x86: provide stubs for entry point Wei Liu
2018-10-12 14:56   ` Jan Beulich
2018-10-15 10:40     ` Wei Liu
2018-10-16 13:22       ` Andrew Cooper
2018-10-04 15:43 ` [PATCH 12/17] x86: connect guest creation with CONFIG_PV Wei Liu
2018-10-12 15:09   ` Jan Beulich
2018-10-16 16:01     ` Wei Liu
2018-10-04 15:43 ` [PATCH 13/17] x86: don't create Dom0 if neither PV nor HVM is available Wei Liu
2018-10-12 15:12   ` Jan Beulich
2018-10-12 15:28     ` Andrew Cooper
2018-10-12 16:02       ` Wei Liu
2018-10-04 15:43 ` [PATCH 14/17] x86: don't report PV support when !CONFIG_PV Wei Liu
2018-10-12 15:13   ` Jan Beulich
2018-10-04 15:43 ` [PATCH 15/17] x86: expose CONFIG_PV Wei Liu
2018-10-12 15:16   ` Jan Beulich
2018-10-16 16:37     ` Wei Liu
2018-10-04 15:43 ` [PATCH 16/17] x86: introduce new defconfigs for PV and HVM Wei Liu
2018-10-12 15:19   ` Jan Beulich
2018-10-12 15:34     ` Wei Liu
2018-10-12 15:43       ` Jan Beulich
2018-10-12 17:16         ` Wei Liu
2018-10-04 15:43 ` [PATCH 17/17] automation: build Xen with CONFIG_PV and CONFIG_HVM explicitly set Wei Liu
2018-10-07 18:29   ` Doug Goldstein

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.