xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* (unknown), 
@ 2010-02-02  8:19 Sheng Yang
  2010-02-02  8:19 ` [PATCH 1/6] xen/hybrid: add support for hvm_op Sheng Yang
                   ` (6 more replies)
  0 siblings, 7 replies; 16+ messages in thread
From: Sheng Yang @ 2010-02-02  8:19 UTC (permalink / raw)
  To: Jeremy Fitzhardinge, Keir Fraser; +Cc: xen-devel, linux-kernel

Hi, Jeremy & Keir

Here is the second version of patchset to enable Xen Hybrid extension support
in Linux kernel.

The Hybrid Extension is started from real mode like HVM guest, but also with a
a range of PV features(e.g. PV halt, PV timer, event channel, as well as PV
drivers). So guest with Hybrid extension feature can takes the advantages of
both H/W virtualization and Para-Virtualization.

The first two of the patchset imported several header file from Jeremy's tree
and Xen tree, respect to Jeremy and Keir's works.

The whole patchset based on Linux upstream.

Current the patchset support x86_64 only.

The major change from v1:
1. SMP support.
2. Modify the entrance point to avoid most of genernic kernel modification.
3. Binding PV timer with event channel mechanism.

You need a line like:

cpuid = [ '0x40000002:edx=0x3' ]

in HVM configuration file to expose hybrid feature to guest, and

CONFIG_XEN

in the guest kernel configuration file to enable the hybrid support.

And the compiled image can be used as native/pv domU/hvm guest/hybrid kernel.

Comments are welcome!

BTW: For the MSI/MSI-X support, pv_ops dom0 can share the solution with hybrid.
We would try to figure out a elegant way to deal with it later.

--
regards
Yang, Sheng

--
 arch/x86/include/asm/xen/cpuid.h     |   73 +++++++++++++
 arch/x86/include/asm/xen/hypercall.h |    6 +
 arch/x86/kernel/setup.c              |    8 ++
 arch/x86/xen/enlighten.c             |  192 ++++++++++++++++++++++++++++++++++
 arch/x86/xen/irq.c                   |   54 ++++++++++
 arch/x86/xen/smp.c                   |  144 +++++++++++++++++++++++++-
 arch/x86/xen/xen-head.S              |    6 +
 arch/x86/xen/xen-ops.h               |    4 +
 drivers/block/xen-blkfront.c         |    3 +
 drivers/input/xen-kbdfront.c         |    4 +
 drivers/net/xen-netfront.c           |    3 +
 drivers/video/xen-fbfront.c          |    4 +
 drivers/xen/events.c                 |   66 +++++++++++-
 drivers/xen/grant-table.c            |   67 ++++++++++++-
 drivers/xen/xenbus/xenbus_probe.c    |   23 ++++-
 include/xen/events.h                 |    1 +
 include/xen/hvm.h                    |   28 +++++
 include/xen/interface/hvm/hvm_op.h   |   79 ++++++++++++++
 include/xen/interface/hvm/params.h   |  111 ++++++++++++++++++++
 include/xen/interface/xen.h          |    6 +-
 include/xen/xen.h                    |   12 ++
 21 files changed, 883 insertions(+), 11 deletions(-)

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

end of thread, other threads:[~2010-02-03  5:17 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-02  8:19 (unknown), Sheng Yang
2010-02-02  8:19 ` [PATCH 1/6] xen/hybrid: add support for hvm_op Sheng Yang
2010-02-02  8:19 ` [PATCH 2/6] xen/hybrid: Import cpuid.h from Xen Sheng Yang
2010-02-02  8:19 ` [PATCH 3/6] xen/hybrid: Xen Hybrid Extension initialization Sheng Yang
2010-02-02  8:19 ` [PATCH 4/6] xen/hybrid: The entrance for Hybrid Sheng Yang
2010-02-02  8:19 ` [PATCH 5/6] xen/hybrid: Make event channel work with QEmu emulated devices Sheng Yang
2010-02-02  8:19 ` [PATCH 6/6] xen/hybrid: Enable grant table and xenbus Sheng Yang
2010-02-02 11:33   ` Ian Campbell
2010-02-02 13:24     ` Sheng Yang
2010-02-02 16:24       ` [Xen-devel] " Ian Campbell
2010-02-02 16:46         ` Sheng Yang
2010-02-02 18:09           ` [Xen-devel] " Ian Campbell
2010-02-03  5:17             ` Sheng Yang
2010-02-02 17:03   ` Konrad Rzeszutek Wilk
2010-02-02 17:46     ` Sheng Yang
2010-02-02  8:26 ` [PATCH 0/6][v2] Hybrid extension for Xen guest Sheng Yang

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).