From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: David Vrabel <david.vrabel@citrix.com>
Cc: Keir Fraser <keir@xen.org>, Jan Beulich <jbeulich@suse.com>,
xen-devel@lists.xen.org
Subject: Re: [PATCHv4 0/11] Xen: FIFO-based event channel ABI
Date: Mon, 30 Sep 2013 14:41:38 -0400 [thread overview]
Message-ID: <20130930184138.GC5211@phenom.dumpdata.com> (raw)
In-Reply-To: <1380279359-28817-1-git-send-email-david.vrabel@citrix.com>
On Fri, Sep 27, 2013 at 11:55:48AM +0100, David Vrabel wrote:
> This is a complete implementation of the hypervisor and xl toolstack
> parts of the FIFO-based event channel ABI described in this design
> document:
>
> http://xenbits.xen.org/people/dvrabel/event-channels-F.pdf
>
> Changes in draft F are:
>
> - READY field in the control block is now 32-bits (so guests only need
> to support atomic bit ops on 32-bit words). This is only a
> documentation change as the implementation already used a uint32_t.
>
> - DOMCTL_set_max_evtchn replaces EVTCHNOP_set_limit.
>
> - DomUs default to unlimited number of event channels requiring
> the toolstack to set a limit.
>
> The toolstack defaults to limiting guests to 127 event channels if the
> event_channels option is omitted. This means the minimum amount of
> both Xen heap and global mapping space is used regardless of which ABI
> is used. If this is considered too restrictive a limit, 1023 would be
> another sensible default (limits the guest to a single event array
> page but 5 xenheap pages for the struct evtchns).
I would say 1023 (so the same value as the existing event mechanism)
would be a sensible default.
>
> An updated version of the Linux patch series is not quite ready yet.
> There is one remaining issue but fixing this will not require any
> changes to the hypervisor ABI or implementation. The remaining issue
> requires preallocating space in the evtchn-to-irq map as this cannot
> be expanded in pirq_startup() (since this function cannot return a
> failure).
>
> The latest Linux changes can be found in the orochi-v4w branch of:
>
> git://xenbits.xen.org/people/dvrabel/linux.git
>
> Patch 1-4 do some preparatory work for supporting alternate ABIs.
>
> Patch 5 expands the number of evtchn objects a domain may have by
> changing how they are allocated.
>
> Patch 6 adds the public ABI.
>
> Patch 7 adds the EVTCHNOP_set_priority implementation. This will
> return -ENOSYS for ABIs that do not support priority.
>
> Patch 8 adds the FIFO-based ABI implementation.
>
> Patch 9-10 adds the DOMCTL_set_max_evtchn implementation and adds a
> function to libxc. This will also work with the 2-level ABI.
>
> Patch 11 add the event_channels configuration option to xl and libxl
> bits needed for this.
>
> Changes in v4:
>
> - Updates for Draft F of the design.
> - DOMCTL_set_max_evtchn replaces EVTCHNOP_set_limit.
> - Hypervisor defaults to unlimited event channels for for DomU.
> - Optimized memory allocation for struct evtchn's when fewer than 128
> are required (see patch 5).
> - Added event_channels option to the xl domain configuration file and
> plumbed this through libxl_build_info. Defaults to 127.
>
> Changes in v3:
>
> - Updates for Draft E of the design.
> - Store priority in struct evtchn.
> - Implement set_priority with generic code + hook.
> - Implement set_limit and add libxc function.
> - Add ABI specific output to 'e' debug key.
>
> Changes in v2:
>
> - Updates for Draft D of the design.
> - 130,000+ event channels are now supported.
> - event_port.c -> event_2l.c and only contains 2l functions.
> - Addresses various review comments
> - int -> unsigned in lots of places
> - use write_atomic() to set HEAD
> - removed MAX_EVTCHNS
> - evtchn_ops are const.
> - Pack struct evtchns better to reduce memory needed.
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel
next prev parent reply other threads:[~2013-09-30 18:41 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-27 10:55 [PATCHv4 0/11] Xen: FIFO-based event channel ABI David Vrabel
2013-09-27 10:55 ` [PATCH 01/11] debug: remove some event channel info from the 'i' and 'q' debug keys David Vrabel
2013-09-27 10:55 ` [PATCH 02/11] evtchn: refactor low-level event channel port ops David Vrabel
2013-09-27 10:55 ` [PATCH 03/11] evtchn: print ABI specific state with the 'e' debug key David Vrabel
2013-09-27 10:55 ` [PATCH 04/11] evtchn: use a per-domain variable for the max number of event channels David Vrabel
2013-09-27 10:55 ` [PATCH 05/11] evtchn: allow many more evtchn objects to be allocated per domain David Vrabel
2013-09-27 10:55 ` [PATCH 06/11] evtchn: add FIFO-based event channel ABI David Vrabel
2013-09-27 10:55 ` [PATCH 07/11] evtchn: implement EVTCHNOP_set_priority and add the set_priority hook David Vrabel
2013-09-27 10:55 ` [PATCH 08/11] evtchn: add FIFO-based event channel hypercalls and port ops David Vrabel
2013-09-27 12:34 ` Jan Beulich
2013-09-27 10:55 ` [PATCH 09/11] xen: Add DOMCTL to limit the number of event channels a domain may use David Vrabel
2013-09-27 12:40 ` Jan Beulich
2013-09-27 14:29 ` Daniel De Graaf
2013-09-27 10:55 ` [PATCH 10/11] libxc: add xc_domain_set_max_evtchn() David Vrabel
2013-10-01 12:30 ` Ian Campbell
2013-09-27 10:55 ` [PATCH 11/11] libxl, xl: add event_channels option to xl configuration file David Vrabel
2013-10-01 12:36 ` Ian Campbell
2013-10-01 12:53 ` David Vrabel
2013-09-27 12:41 ` [PATCHv4 0/11] Xen: FIFO-based event channel ABI Jan Beulich
2013-09-30 18:41 ` Konrad Rzeszutek Wilk [this message]
2013-10-01 10:25 ` Jan Beulich
2013-10-01 14:22 ` Konrad Rzeszutek Wilk
2013-10-01 14:41 ` Jan Beulich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130930184138.GC5211@phenom.dumpdata.com \
--to=konrad.wilk@oracle.com \
--cc=david.vrabel@citrix.com \
--cc=jbeulich@suse.com \
--cc=keir@xen.org \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).