[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v8 00/11] viridian: implement more enlightenments


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Paul Durrant <paul.durrant@xxxxxxxxxx>
  • Date: Mon, 18 Mar 2019 11:20:48 +0000
  • Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, Wei Liu <wei.liu2@xxxxxxxxxx>, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>, George Dunlap <George.Dunlap@xxxxxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Ian Jackson <ian.jackson@xxxxxxxxxxxxx>, Tim Deegan <tim@xxxxxxx>, Julien Grall <julien.grall@xxxxxxx>, Paul Durrant <paul.durrant@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Delivery-date: Mon, 18 Mar 2019 11:21:15 +0000
  • Ironport-data: A9a23:pfhXzq9qfs97GwHpsRpbDrVtTnXEO2zSOkUsVf3CZtOz9vdTvGEbxd TrPAqzxsP099SZe4nFBu80Yb4Uc1a/iKSrjcWUlG46ySTOwov3B8lueFJ8wQNI6EBJFsnB6X lg/bkd0RbDaCR6+VsYynsiUZgZnJ6JtLw6xp1l/GZ8n4b5XGVrUFMYysm70i9UIkxL4tYXf4 A09sLBveJq5z8g121Pmll4RxoYv78ntwAJDBOHeQ4B8BYvJqOIOowpdLJAViEZDBAARQU8eo YMBskVLb3A6VKoNOI0H+NeyGxYCT9t+wZYvTkfZtxbk+S6l1ARqKvtOfS5GuZIyczFzmG0Ux dypl0+sEuwPwirThnJfDcCtDX5LUauGniSer2BkSl2/pPZAAeofZ/2UHoYI71PvYGiOk3o2n fk0RBXGzUSLn/O+KFORh6ue/uothdUFP4wceg/M0uDKDGs8K+nyEl4kXhXfLYUyWcK1Cwl0u mqIt2dWTKLJyq5xTDiih8sHDuXkbxhVnJpv7znsANnJP6Qtv2f8GNpCMXVZB8A5mGOwNUGI1 HBTWPPkkylVgrkTqrDmplogud1rEpVtPgRGWzjfoZT3Q7ZeTAQxAMPp+7uNu8pFzwTBE14Ur 0MR0Xa1uuhhPaCd5UPpxGSas9oiig2HXiXplWF7tmHRhiMLrlqoBnE19ckekY9NJ041r9zav DljihNRfVhCflwxxNkCUYXc0tQ68h+9qr9jjd7qAdvMWPDMZOq4kf7MrE0Vgxfqhp/3W3vkK KWPwQJZL4GWZ+/gIBwbt80CqQjYR3CX7lgGFpkoc+/yebn+D+gEMc9fSh++Te/IYOmwvxHCq m9eZ4NaSvfDhKZsoCqnzCayOA9/iJYbEPzuD8sGwgH8k0WK59zfLSlSAcCyMnEy2iJX+uXM5 3jl9uwJKFheFmB9r5bIGAqSG+vd3H0E+RTHt/fg5PcJ9l68BBNNhPeNmXvlhcIUDFKIdUMxW A77oe2hJ6jsKiKWLfu6fAo40EoITAt/D71yZuv5Nftq6tX55YKVMrSea3Wxhc6QHCBkUNfgU byPUYCTPzAe9FTRG0/psF46G7mXHpCsilJmOMyBi4bIRjyvQpWcqfTN8/HRRk8Ey87C2gNME yfoui9XPazcSoN1w4iVTeLx4uFibn7nnQBtW2kCtD5S/D9DdHYw1V8DQ9cSuUWknSE3cqC1o aq07JlnxL8IKlg6MriGkS8G+fMj1FNwY5V4Fg45jFEefzPhbA8Y8JEsZol2P62XbZU35ykzG 6Lg6voQaSCgBaKM6qCyN3JE1Ej71aKriNfSrxgmTonaN79cLfGsaZZIGkhz9en3keqSDlJe8 H+H4u32dvlwDPLO+8hAvcG1A59Jm1O6LzG4Z5CosovloIbyUkrtBxVJGNcwoiqyFMqPI/3NI TBBkYZ/31ow/4VOd3BWHQMorU25ftvGH6MkqgTgdv9lk/SrLBziGbQOl+qpJmhU7UuIdPmxh ET4TiJYS88shUIBkBYUppX5V9PTdgDDU9VSGBgViJszRjWhihoZ+xVSoktM3LxJyLV19C+Ss w2O4KmYRsR6Y8jD24NLPpWS/OKond5UZNRXOe3itF7pYN9UyVwNR1Fiflyip5A+ad7Xdxmcu ykrq1vd/PcU+90uW1ZgBpSHrrCsr9tMUbBnyKENOAlUQ/1B8SjxMp6JLRolg1CrppgRuD4It +zoFr9EEw5ZiF5BH+tr6Dzm/rZfyo5jdzx2U+2ou9+TwczTPyo6Q4Gq8mFlc/uJGe3eZfeJV er3EGTPq7oC3diqrqhttS70kHqfphT9o3E4JehEZBSVATdHY0yDzZrR6Gnv6bN8galfZt4vH WNq7Dl9+C6R9fHByosgR6KCDueRYYXtdPL13/y41IHaGbPv7riamk9chngOhaeOYlBw6HJ4q npNfxssi15EjlUdQo8Xe5UOa15WqnlgaQs9iCTy9sKAOJaaQtmHvOr+zAu/HVs3ghQR1lGmo ZewWvsvSyvNGgRgpWSE9lL3ivhCoxKZvER8wJpALOKyRWVo22BPruCk8D66gO4QtA8XbhI4x VAPpBpWJjuIdtLj2BMNOX1FEx5vajzs1fJe2Hb2w==
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

This series adds three new enlightenments:

- Synthetic timers, which depends on the...
- Synthetic interrupt controller (or SynIC)
- Synthetic cluster IPI

All these enlightenments are implemented in current versions of QEMU/KVM
so this series closes the gap.

Paul Durrant (11):
  viridian: add init hooks
  viridian: separately allocate domain and vcpu structures
  viridian: use stack variables for viridian_vcpu and viridian_domain...
  viridian: make 'fields' struct anonymous...
  viridian: extend init/deinit hooks into synic and time modules
  viridian: add missing context save helpers into synic and time modules
  viridian: use viridian_map/unmap_guest_page() for reference tsc page
  viridian: stop directly calling
    viridian_time_ref_count_freeze/thaw()...
  viridian: add implementation of synthetic interrupt MSRs
  viridian: add implementation of synthetic timers
  viridian: add implementation of the HvSendSyntheticClusterIpi
    hypercall

 docs/man/xl.cfg.5.pod.in               |  18 +-
 tools/libxl/libxl.h                    |  18 +
 tools/libxl/libxl_dom.c                |  10 +
 tools/libxl/libxl_types.idl            |   3 +
 xen/arch/x86/domain.c                  |  12 +-
 xen/arch/x86/hvm/hvm.c                 |  10 +
 xen/arch/x86/hvm/viridian/private.h    |  31 +-
 xen/arch/x86/hvm/viridian/synic.c      | 376 ++++++++++++++++--
 xen/arch/x86/hvm/viridian/time.c       | 515 ++++++++++++++++++++++---
 xen/arch/x86/hvm/viridian/viridian.c   | 229 +++++++++--
 xen/arch/x86/hvm/vlapic.c              |  20 +-
 xen/include/asm-x86/hvm/domain.h       |   2 +-
 xen/include/asm-x86/hvm/hvm.h          |   7 +
 xen/include/asm-x86/hvm/vcpu.h         |   2 +-
 xen/include/asm-x86/hvm/viridian.h     |  75 +++-
 xen/include/public/arch-x86/hvm/save.h |   4 +
 xen/include/public/hvm/params.h        |  17 +-
 17 files changed, 1209 insertions(+), 140 deletions(-)

v8:
 - Squash in follow-up series

v4:
 - Add two cleanup patches (#3 and #4) and re-order #8 and #9

v3:
 - Add the synthetic cluster IPI patch (#11)

---
Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Cc: George Dunlap <George.Dunlap@xxxxxxxxxxxxx>
Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Cc: Jan Beulich <jbeulich@xxxxxxxx>
Cc: Julien Grall <julien.grall@xxxxxxx>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Cc: "Roger Pau Monné" <roger.pau@xxxxxxxxxx>
Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>
Cc: Tim Deegan <tim@xxxxxxx>
Cc: Wei Liu <wei.liu2@xxxxxxxxxx>
-- 
2.20.1


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

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.