[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH for-4.6 v2 3/4] oxenstored: fix systemd socket activation
Use the correct API sd_listen_fds to determine whether the process is started by systemd. Change sd_booted to launched_by_systemd to avoid confusion with systemd's API. Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> Acked-by: Dave Scott <dave.scott@xxxxxxxxxxxxx> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> --- For 4.6: without this oxenstored is broken when running on a system with systemd but not started by systemd. v2: booted -> lanuched, no functional change so I keep Dave's ack. --- tools/ocaml/xenstored/systemd.ml | 2 +- tools/ocaml/xenstored/systemd.mli | 4 ++-- tools/ocaml/xenstored/systemd_stubs.c | 6 +++--- tools/ocaml/xenstored/utils.ml | 2 +- tools/ocaml/xenstored/xenstored.ml | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/tools/ocaml/xenstored/systemd.ml b/tools/ocaml/xenstored/systemd.ml index 2aa39ea..732446d 100644 --- a/tools/ocaml/xenstored/systemd.ml +++ b/tools/ocaml/xenstored/systemd.ml @@ -13,5 +13,5 @@ *) external sd_listen_fds: string -> Unix.file_descr = "ocaml_sd_listen_fds" -external sd_booted: unit -> bool = "ocaml_sd_booted" +external launched_by_systemd: unit -> bool = "ocaml_launched_by_systemd" external sd_notify_ready: unit -> unit = "ocaml_sd_notify_ready" diff --git a/tools/ocaml/xenstored/systemd.mli b/tools/ocaml/xenstored/systemd.mli index 85c9f2e..538fc5e 100644 --- a/tools/ocaml/xenstored/systemd.mli +++ b/tools/ocaml/xenstored/systemd.mli @@ -17,8 +17,8 @@ * us do sanity checks on the expected sockets *) val sd_listen_fds: string -> Unix.file_descr -(** Tells us whether or not systemd support was compiled in *) -val sd_booted: unit -> bool +(** Tells us whether the process is launched by systemd *) +val launched_by_systemd: unit -> bool (** Tells systemd we're ready *) external sd_notify_ready: unit -> unit = "ocaml_sd_notify_ready" diff --git a/tools/ocaml/xenstored/systemd_stubs.c b/tools/ocaml/xenstored/systemd_stubs.c index d924ff1..1bd5dea 100644 --- a/tools/ocaml/xenstored/systemd_stubs.c +++ b/tools/ocaml/xenstored/systemd_stubs.c @@ -92,14 +92,14 @@ CAMLprim value ocaml_sd_listen_fds(value connect_to) CAMLreturn(sock_ret); } -CAMLprim value ocaml_sd_booted(value ignore) +CAMLprim value ocaml_launched_by_systemd(value ignore) { CAMLparam1(ignore); CAMLlocal1(ret); ret = Val_false; - if (sd_booted()) + if (sd_listen_fds(0) > 0) ret = Val_true; CAMLreturn(ret); @@ -129,7 +129,7 @@ CAMLprim value ocaml_sd_listen_fds(value connect_to) CAMLreturn(sock_ret); } -CAMLprim value ocaml_sd_booted(value ignore) +CAMLprim value ocaml_launched_by_systemd(value ignore) { CAMLparam1(ignore); CAMLlocal1(ret); diff --git a/tools/ocaml/xenstored/utils.ml b/tools/ocaml/xenstored/utils.ml index 61321c6..9f82c1c 100644 --- a/tools/ocaml/xenstored/utils.ml +++ b/tools/ocaml/xenstored/utils.ml @@ -84,7 +84,7 @@ let create_regular_unix_socket name = sock let create_unix_socket name = - if Systemd.sd_booted() then + if Systemd.launched_by_systemd() then Systemd.sd_listen_fds name else create_regular_unix_socket name diff --git a/tools/ocaml/xenstored/xenstored.ml b/tools/ocaml/xenstored/xenstored.ml index bfe689b..f484024 100644 --- a/tools/ocaml/xenstored/xenstored.ml +++ b/tools/ocaml/xenstored/xenstored.ml @@ -431,7 +431,7 @@ let _ = while not !quit do try - if Systemd.sd_booted() then + if Systemd.launched_by_systemd() then Systemd.sd_notify_ready (); main_loop () with exc -> -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |