All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Ian Campbell <ian.campbell@citrix.com>, xen-devel@lists.xen.org
Cc: wei.liu2@citrix.com, stefano.stabellini@eu.citrix.com,
	ian.jackson@eu.citrix.com, roger.pau@citrix.com
Subject: Re: [PATCH RFC tools 5/6] tools: Refactor /dev/xen/evtchn wrappers into libxenevtchn.
Date: Wed, 10 Jun 2015 18:16:45 +0100	[thread overview]
Message-ID: <557870FD.9030007@citrix.com> (raw)
In-Reply-To: <1433936205-21539-5-git-send-email-ian.campbell@citrix.com>

On 10/06/15 12:36, Ian Campbell wrote:
> libxenevtchn will provide a stable API and ABI for accessing the
> evtchn device.
>
> The functions are moved into the xenevtchn namespace to make a clean
> break from libxc and avoid ambiguity regarding which interfaces are
> stable.
>
> All in-tree users are updated to use the new names.
>
> Upon request (via #define XC_WANT_COMPAT_EVTCHN_API) libxenctrl will
> provide a compat API for the old names, which is used by qemu-xen for
> the time being.
>
> The dynamic osdep mechanism from libxc is not preserved, the
> alternative backend (a xen-api/xapi shim) is no longer around. (Nested
> virt probably suffices for this use case now).
>
> This leaves a few event channel related functions which go via privcmd
> (EVTCHNOP) rather than ioctls on the /dev/xen/evtchn device in
> libxenctrl. Specifically:
>
>  - xc_evtchn_alloc_unbound
>  - xc_evtchn_reset
>  - xc_evtchn_status
>
> These functions do not appear to be needed by qemu-dm, qemu-pv
> (provision of device model to HVM guests and PV backends respectively)
> or by libvchan suggesting they are not needed by non-toolstack uses of
> event channels. QEMU does use these in hw/xenpv/xen_domainbuild.c but
> that is a "toolstack use".
>
> The new library uses a version script to ensure that only expected
> symbols are exported and to version them such that ABI guarantees can
> be kept in the future.
>
> Build tested with Linux and mini-os/stubdom, but not FreeBSD, NetBSD
> or Solaris.
>
> Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
> ---
>
> Must be applied with:
>
>  - "qemu-xen-traditional: Use libxenevtchn" and a corresponding
>    QEMU_TAG update folded here.
>  - "mini-os: Include libxenevtchn with libxc"" and a corresponding
>    bump to MINIOS_UPSTREAM_REVISION folded in here.
> ---

As we are taking the hit of updating all in-tree users, and providing a
compat shim, can we take the opportunity to make amends to the ABI.

For xenevtchn, it is never realistically going to gain logging.  It
seems like it would be a good idea to ditch all knowledge of xentoollog
from the new library, as the cost is just dropping one parameter in the
callsites.

~Andrew

  parent reply	other threads:[~2015-06-10 17:16 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-10 11:36 [PATCH RFC 0/6+2+2] Begin to disentangle libxenctrl and provide some stable libraries Ian Campbell
2015-06-10 11:36 ` [PATCH RFC tools 1/6] tools: Refactor "xentoollog" into its own library Ian Campbell
2015-06-11 11:20   ` Andrew Cooper
2015-06-11 11:35     ` Ian Campbell
2015-06-11 12:06       ` Jan Beulich
2015-06-11 12:21         ` Ian Campbell
2015-09-21 16:17     ` Ian Jackson
2015-09-21 17:03       ` Andrew Cooper
2015-09-21 17:13         ` Ian Jackson
2015-09-21 17:30           ` Andrew Cooper
2015-09-22  8:39             ` Ian Campbell
2015-06-10 11:36 ` [PATCH RFC tools 2/6] tools: Link in-tree libvchan users against libxenvchan.so Ian Campbell
2015-06-10 11:36 ` [PATCH RFC tools 3/6] tools: Do not add top-level tools dir to include path Ian Campbell
2015-06-10 11:36 ` [PATCH RFC tools 4/6] tools/libxc: Remove osdep indirection for xc_evtchn Ian Campbell
2015-06-10 11:36 ` [PATCH RFC tools 5/6] tools: Refactor /dev/xen/evtchn wrappers into libxenevtchn Ian Campbell
2015-06-10 16:29   ` David Vrabel
2015-06-11  8:58     ` Ian Campbell
2015-06-10 17:16   ` Andrew Cooper [this message]
2015-06-11  9:03     ` Ian Campbell
2015-06-10 11:36 ` [PATCH RFC tools 6/6] Cleanup SHLIBDEPS Ian Campbell
2015-06-10 11:37 ` [PATCH RFC qemu-trad 1/2] qemu-xen-traditional: Use xentoollog as a separate library Ian Campbell
2015-06-10 15:57   ` Ian Jackson
2015-06-11  8:59     ` Ian Campbell
2015-06-10 11:37 ` [PATCH RFC qemu-trad 2/2] qemu-xen-traditional: Use libxenevtchn Ian Campbell
2015-06-10 11:37 ` [PATCH RFC mini-os 1/2] mini-os: Include libxentoollog with libxc Ian Campbell
2015-06-10 11:37 ` [PATCH RFC mini-os 2/2] mini-os: Include libxenevtchn " Ian Campbell
2015-06-10 16:01 ` [PATCH RFC 0/6+2+2] Begin to disentangle libxenctrl and provide some stable libraries Ian Jackson
2015-06-10 16:15   ` Wei Liu
2015-06-11 10:01     ` Antti Kantee

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=557870FD.9030007@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=ian.campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=roger.pau@citrix.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=wei.liu2@citrix.com \
    --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 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.