All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH V3] Implement 3-level event channel in Xen
@ 2013-02-27 14:33 Wei Liu
  2013-02-27 14:33 ` [RFC PATCH V3 01/22] Clean up trailing whitespaces Wei Liu
                   ` (23 more replies)
  0 siblings, 24 replies; 67+ messages in thread
From: Wei Liu @ 2013-02-27 14:33 UTC (permalink / raw)
  To: xen-devel, jbeulich, keir, ian.campbell; +Cc: david.vrabel

Hi all

This is another version of the patch series. Unfortunately the kernel side is
not available at the moment. :-(

Keir, Jan, Ian and David, are you happy with this design in general? I would
like to have explicit ACK / NACK on this if possible, as feature freeze for 4.3
is quite close now.

Changes since V2:
* new interface to register extended event channel ABI
* use vmap to simplify mapping
* replace MAX_EVTCHNS macro with inline function
* libxl: evtchn_l3 -> evtchn_extended

The most notable bit of this series is the interface change. In order to cope
with future ABIs, the interface is renamed to EVTCHNOP_register_extended. It
also provides supported ABI query, so that we can remove unused ABI in the
future.

The semantic meaning of EVTCHNOP_register_extended changes a bit. The `level'
in parameter now changes to `cmd', which means we should go down to specific
ABI routines. ABI-specific structures are still embedded in the union.

Changes since V1:
* move all evtchn related macros / struct definitions to event.h
* only allow 3-level evtchn for Dom0 and driver domains
* add evtchn_l3 flag in libxl


Wei.

Diffstat:
 tools/libxl/libxl_create.c         |    4 +
 tools/libxl/libxl_types.idl        |    1 +
 tools/libxl/xl_cmdimpl.c           |    2 +
 tools/libxl/xl_sxp.c               |    2 +
 xen/arch/arm/domain.c              |    1 +
 xen/arch/x86/domain.c              |    1 +
 xen/arch/x86/irq.c                 |    7 +-
 xen/common/domain.c                |    3 +
 xen/common/domctl.c                |    5 +-
 xen/common/event_channel.c         |  458 +++++++++++++++++++++++++++++++++---
 xen/common/keyhandler.c            |    6 +-
 xen/common/schedule.c              |    4 +-
 xen/include/asm-arm/types.h        |    7 +-
 xen/include/asm-x86/config.h       |    4 +-
 xen/include/public/domctl.h        |    3 +
 xen/include/public/event_channel.h |   44 ++++
 xen/include/public/xen.h           |   35 ++-
 xen/include/xen/event.h            |   85 ++++++-
 xen/include/xen/sched.h            |   65 ++---
 xen/xsm/flask/hooks.c              |    1 +
 20 files changed, 623 insertions(+), 115 deletions(-)

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

end of thread, other threads:[~2013-03-01 12:00 UTC | newest]

Thread overview: 67+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-27 14:33 [RFC PATCH V3] Implement 3-level event channel in Xen Wei Liu
2013-02-27 14:33 ` [RFC PATCH V3 01/22] Clean up trailing whitespaces Wei Liu
2013-02-28 11:30   ` David Vrabel
2013-02-28 11:36     ` Wei Liu
2013-02-28 11:38     ` Jan Beulich
2013-02-28 12:14       ` Ian Campbell
2013-02-28 12:29         ` Wei Liu
2013-02-28 13:08         ` Jan Beulich
2013-02-27 14:33 ` [RFC PATCH V3 02/22] Dynamically allocate d->evtchn Wei Liu
2013-02-27 16:35   ` Jan Beulich
2013-02-27 14:33 ` [RFC PATCH V3 03/22] Move event channel macros / struct definition to proper place Wei Liu
2013-02-27 14:33 ` [RFC PATCH V3 04/22] flask: include xen/event.h Wei Liu
2013-02-28 11:20   ` David Vrabel
2013-02-28 11:22     ` Wei Liu
2013-02-27 14:33 ` [RFC PATCH V3 05/22] Change MAX_EVTCHNS macro to max_evtchns inline function Wei Liu
2013-02-28 11:58   ` David Vrabel
2013-02-28 13:59     ` Wei Liu
2013-02-27 14:33 ` [RFC PATCH V3 06/22] Define extended event channel registration interface Wei Liu
2013-02-27 16:42   ` Jan Beulich
2013-02-28 11:25     ` Wei Liu
2013-02-28 11:32       ` Jan Beulich
2013-02-28 11:41         ` Wei Liu
2013-02-28 12:32   ` David Vrabel
2013-02-28 15:04     ` Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 07/22] Add evtchn_extended in struct domain Wei Liu
2013-02-28 11:55   ` David Vrabel
2013-02-27 14:34 ` [RFC PATCH V3 08/22] Calculate max event channels for EVTCHN_EXTENDED_L3 Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 09/22] Bump EVTCHNS_PER_BUCKET to 512 Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 10/22] Add evtchn_is_{pending, masked} and evtchn_clear_pending Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 11/22] Update Xen public header Wei Liu
2013-02-28 12:00   ` David Vrabel
2013-02-27 14:34 ` [RFC PATCH V3 12/22] Add supported extended event channel ABI bitmap Wei Liu
2013-02-27 16:47   ` Jan Beulich
2013-02-28 11:21     ` Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 13/22] Add evtchn_abi_str Wei Liu
2013-02-27 16:51   ` Jan Beulich
2013-02-28 11:28     ` Wei Liu
2013-02-28 11:33       ` Jan Beulich
2013-02-27 14:34 ` [RFC PATCH V3 14/22] Add control structures for 3-level event channel Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 15/22] Genneralized event channel operations Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 16/22] Introduce some macros for event channels Wei Liu
2013-02-27 16:53   ` Jan Beulich
2013-02-27 17:04     ` Ian Campbell
2013-02-28  7:54       ` Jan Beulich
2013-02-28  8:35         ` Ian Campbell
2013-02-28 11:17         ` Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 17/22] Infrastructure to manipulate 3-level event channel pages Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 18/22] Implement EVTCHNOP_register_extended Wei Liu
2013-02-28 12:33   ` David Vrabel
2013-02-27 14:34 ` [RFC PATCH V3 19/22] Enable exteneded event channel ABI query Wei Liu
2013-02-28 12:36   ` David Vrabel
2013-02-27 14:34 ` [RFC PATCH V3 20/22] Implement 3-level event channel routines Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 21/22] Only allow extended event channel on Dom0 and driver domains Wei Liu
2013-02-27 16:58   ` Jan Beulich
2013-02-28 11:19     ` Wei Liu
2013-02-28 12:43   ` David Vrabel
2013-02-28 19:29     ` Wei Liu
2013-02-27 14:34 ` [RFC PATCH V3 22/22] libxl: add evtchn_extended flag Wei Liu
2013-02-28 12:48   ` David Vrabel
2013-03-01 11:55   ` Ian Jackson
2013-02-27 16:28 ` [RFC PATCH V3] Implement 3-level event channel in Xen Keir Fraser
2013-02-27 17:01 ` Jan Beulich
2013-02-27 19:49   ` Keir Fraser
2013-02-27 23:19     ` Wei Liu
2013-02-28  5:58       ` Keir Fraser
2013-02-28  7:23     ` Jan Beulich
2013-03-01 12:00       ` Ian Jackson

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.