From: Razvan Cojocaru <rcojocaru@bitdefender.com>
To: Ian Campbell <Ian.Campbell@citrix.com>,
Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: "xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: Xenstore.h clarifications
Date: Fri, 28 Nov 2014 12:18:00 +0200 [thread overview]
Message-ID: <54784BD8.20007@bitdefender.com> (raw)
In-Reply-To: <1417168681.19852.2.camel@citrix.com>
On 11/28/2014 11:58 AM, Ian Campbell wrote:
> On Thu, 2014-11-27 at 12:51 +0200, Razvan Cojocaru wrote:
>
> It's a good idea to CC the relevant maintainers if you want their input.
>
>> Hello,
>>
>> I know that xc_interface_open() can be safely called several times from
>> the same process, and that several processes can each have a bunch of
>> xc_interface handles open, and that I shouldn't use an xc_interface
>> inherited from the parent in a child process, because xenctrl.h says so.
>>
>> Is it safe to assume that the same restrictions / conventions apply to
>> xs_handles obtained via xs_open()? Xenstore.h is not explicit. Looking
>> at the code, it would seem safe to assume that it can be used in a
>> similar manner, but it would be nice to have this confirmed if possible.
>
> I think there's a pretty good chance that the same applies to xenstore
> connections made over the device/shared-ring interface.
>
> I'm not really sure about the semantics of a Unix domain socket after a
> fork, but I don't expect both parent and child could sanely make use of
> it.
>
> So I think the answer is:
>
> * Connections made with xs_open(0) (which might be shared page or
> socket based) are only guaranteed to work in the parent after
> fork.
> * Connections made with xs_open(XS_OPEN_SOCKETONLY) will be usable
> in either the parent or the child after fork, but not both.
> * xs_daemon_open*() and xs_domain_open() are deprecated synonyms
> for xs_open(0)
> * XS_OPEN_READONLY has not bearing on any of this.
>
> Ian, does that seem right?
>
> Razvan, assuming Ian concurs with the above (or corrects it) then could
> you knock up a patch to document the result please.
Sure, I'll document whatever gets confirmed.
Thanks,
Razvan
next prev parent reply other threads:[~2014-11-28 10:18 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-27 10:51 Xenstore.h clarifications Razvan Cojocaru
2014-11-28 9:58 ` Ian Campbell
2014-11-28 10:18 ` Razvan Cojocaru [this message]
2014-11-28 11:37 ` Ian Jackson
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=54784BD8.20007@bitdefender.com \
--to=rcojocaru@bitdefender.com \
--cc=Ian.Campbell@citrix.com \
--cc=Ian.Jackson@eu.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.