|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH for-4.6 4/5] oxenstored: fix systemd socket activation
Iâm not familiar with the systemd side of things, but the OCaml stub changes
look ok:
Acked-by: David Scott <dave.scott@xxxxxxxxxx>
> On 6 Aug 2015, at 14:38, Wei Liu <wei.liu2@xxxxxxxxxx> wrote:
>
> Use the correct API sd_listen_fds to determine whether the process is
> started by systemd.
>
> Change sd_booted to booted_by_systemd to avoid confusion with systemd's
> API.
>
> Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
> ---
> Cc: Dave Scott <dave.scott@xxxxxxxxxxxxx>
>
> For 4.6: without this oxenstored is broken when running on a system with
> systemd but not started by systemd.
> ---
> 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..6120fd4 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 booted_by_systemd: unit -> bool = "ocaml_booted_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..293b5bc 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 or not the process is booted by systemd *)
> +val booted_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..354539e 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_booted_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_booted_by_systemd(value ignore)
> {
> CAMLparam1(ignore);
> CAMLlocal1(ret);
> diff --git a/tools/ocaml/xenstored/utils.ml b/tools/ocaml/xenstored/utils.ml
> index 61321c6..fad15b3 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.booted_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..409223d 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.booted_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 |