From: "Luis R. Rodriguez" <mcgrof@suse.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: David Scott <dave.scott@eu.citrix.com>,
Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
Ian Jackson <ian.jackson@eu.citrix.com>,
"Luis R. Rodriguez" <mcgrof@do-not-panic.com>,
Vincent Hanquez <Vincent.Hanquez@eu.citrix.com>,
xen-devel@lists.xenproject.org
Subject: Re: [PATCH v6 03/13] oxenstored: add support for systemd active sockets
Date: Wed, 2 Jul 2014 21:09:41 +0200 [thread overview]
Message-ID: <20140702190941.GV27687@wotan.suse.de> (raw)
In-Reply-To: <1404306503.5562.71.camel@kazak.uk.xensource.com>
On Wed, Jul 02, 2014 at 02:08:23PM +0100, Ian Campbell wrote:
> On Thu, 2014-06-12 at 18:18 -0700, Luis R. Rodriguez wrote:
> > diff --git a/tools/ocaml/xenstored/systemd.ml b/tools/ocaml/xenstored/systemd.ml
> > new file mode 100644
> > index 0000000..2aa39ea
> > --- /dev/null
> > +++ b/tools/ocaml/xenstored/systemd.ml
>
> Ideally the systemd ocaml bindings would come from a suitable ocaml
> library (opam or whatever). I suppose such a thing doesn't exist
> already?
Not that I was able to find but Ocaml folks can chime in.
> Perhaps Dave or Anil etc could advise on the feasibility of publishing
> these bindings as a separate project. In general I'd much rather we
> added build dependencies for things like that than incorporate things
> which are nothing to do with Xen etc into the tree (we've done too much
> of that in the past...)
Can't this be done as a separate step? Otherwise Ocaml is holding
Xen behind, has that compromise has already been made and accepted?
> > +CAMLprim value ocaml_sd_listen_fds(value connect_to)
> > +{
> > + CAMLparam1(connect_to);
> > + CAMLlocal1(sock_ret);
> > + int sock = -EBADR, n;
> > +
> > + n = sd_listen_fds(0);
> > + if (n <= 0) {
> > + sd_notifyf(0, "STATUS=Failed to get any active sockets: %s\n"
> > + "ERRNO=%i",
> > + strerror(errno),
> > + errno);
> > + caml_failwith("ocaml_sd_listen_fds() failed to get any sockets");
> > + } else if (n > 2) {
> > + fprintf(stderr, SD_ERR "Expected 2 fds but given %d\n", n);
> > + sd_notifyf(0, "STATUS=Mismatch on number (2): %s\n"
> > + "ERRNO=%d",
> > + strerror(EBADR),
> > + EBADR);
> > + caml_failwith("ocaml_sd_listen_fds() mismatch");
> > + }
> > +
> > + sock = oxen_verify_socket_socket((const char *) String_val(connect_to));
>
> String_val() gives you a char *, which ought to be automatically
> promoted to const as necessary. So I think the case is unnecessary and
> only serves to potentially hide actual errors.
OK.
> > + if (sock <= 0) {
> > + fprintf(stderr, "failed to verify sock %s\n",
> > + (const char *) String_val(connect_to));
>
> Same, if less critical, here.
>
> Is stderr the best place to shove this message? sd_notify is also used
> elsewhere it seems.
stderr will make it out to the journal, the other errors are to also notify
systemd, additional messages can be pegged with fprintf(stderr, ...). We
want to be very explicit about the root cause of the issue if one triggered.
Luis
next prev parent reply other threads:[~2014-07-02 19:09 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-13 1:18 [PATCH v6 00/13] xen: add systemd support Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 01/13] xenstored: enable usage of config.h on both xenstored and oxenstored Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 02/13] cxenstored: add support for systemd active sockets Luis R. Rodriguez
2014-07-02 13:02 ` Ian Campbell
2014-07-02 19:00 ` Luis R. Rodriguez
2014-07-03 9:13 ` Ian Campbell
2014-07-03 17:06 ` Luis R. Rodriguez
2014-07-04 14:32 ` Ian Campbell
2014-07-08 3:08 ` Luis R. Rodriguez
2014-07-17 19:45 ` Luis R. Rodriguez
2014-07-17 20:16 ` Dave Scott
2014-07-17 23:13 ` Luis R. Rodriguez
2014-07-18 9:27 ` Anil Madhavapeddy
2014-06-13 1:18 ` [PATCH v6 03/13] oxenstored: " Luis R. Rodriguez
2014-07-02 13:08 ` Ian Campbell
2014-07-02 19:09 ` Luis R. Rodriguez [this message]
2014-07-03 8:42 ` Dave Scott
2014-07-03 17:43 ` Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 04/13] oxenstored: force FD_CLOEXEC with Unix.set_close_on_exec on LSB init Luis R. Rodriguez
2014-07-02 13:08 ` Ian Campbell
2014-06-13 1:18 ` [PATCH v6 05/13] tools/xendomains: make xl the default and remove xm usage Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 06/13] tools/xendomains: do space cleanups Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 07/13] tools/xendomains: move to libexec and use a smaller init helper Luis R. Rodriguez
2014-06-13 7:06 ` Jacek Konieczny
2014-06-13 18:32 ` Luis R. Rodriguez
2014-07-02 13:12 ` Ian Campbell
2014-06-13 1:18 ` [PATCH v6 08/13] autoconf: xen: force a refresh with autoconf Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 09/13] autoconf: update m4/pkg.m4 Luis R. Rodriguez
2014-07-02 13:13 ` Ian Campbell
2014-07-02 19:10 ` Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 10/13] autoconf: xen: move standard path variables to config/Paths.mk.in Luis R. Rodriguez
2014-07-02 13:34 ` Ian Campbell
2014-07-02 19:32 ` Luis R. Rodriguez
2014-07-03 9:15 ` Ian Campbell
2014-07-03 18:30 ` Luis R. Rodriguez
2014-07-04 14:33 ` Ian Campbell
2014-07-08 18:41 ` Luis R. Rodriguez
2014-07-08 18:53 ` Luis R. Rodriguez
2014-07-10 16:18 ` Ian Campbell
2014-07-14 23:41 ` Luis R. Rodriguez
2014-07-03 18:53 ` Luis R. Rodriguez
2014-07-04 14:36 ` Ian Campbell
2014-07-08 18:52 ` Luis R. Rodriguez
2014-07-10 16:16 ` Ian Campbell
2014-07-14 23:42 ` Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 11/13] xencommons: move module list into a generic place Luis R. Rodriguez
2014-07-02 13:44 ` Ian Campbell
2014-07-02 21:56 ` Luis R. Rodriguez
2014-07-03 9:15 ` Ian Campbell
2014-06-13 1:18 ` [PATCH v6 12/13] autoconf: xen: enable explicit preference option for xenstored preference Luis R. Rodriguez
2014-07-02 13:54 ` Ian Campbell
2014-07-02 20:09 ` Luis R. Rodriguez
2014-07-03 9:20 ` Ian Campbell
2014-07-03 18:57 ` Luis R. Rodriguez
2014-07-04 14:37 ` Ian Campbell
2014-07-08 18:54 ` Luis R. Rodriguez
2014-06-13 1:18 ` [PATCH v6 13/13] systemd: add xen systemd service and module files Luis R. Rodriguez
2014-06-13 19:55 ` Luis R. Rodriguez
2014-06-19 19:47 ` Bastian Blank
2014-06-19 20:21 ` Luis R. Rodriguez
2014-06-19 20:26 ` Luis R. Rodriguez
2014-06-20 5:59 ` David Sutton
2014-07-02 14:02 ` Ian Campbell
2014-07-02 20:25 ` Luis R. Rodriguez
2014-06-19 19:03 ` [PATCH v6 00/13] xen: add systemd support Luis R. Rodriguez
2014-07-02 14:48 ` Ian Campbell
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=20140702190941.GV27687@wotan.suse.de \
--to=mcgrof@suse.com \
--cc=Ian.Campbell@citrix.com \
--cc=Vincent.Hanquez@eu.citrix.com \
--cc=dave.scott@eu.citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=mcgrof@do-not-panic.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xenproject.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).