[PATCH for-4.17] tools/oxenstored: Fix Oxenstored Live Update

Andrew Cooper posted 1 patch 1 year, 6 months ago
Failed in applying to current master (apply log)
tools/ocaml/xenstored/xenstored.ml | 5 +++++
1 file changed, 5 insertions(+)
[PATCH for-4.17] tools/oxenstored: Fix Oxenstored Live Update
Posted by Andrew Cooper 1 year, 6 months ago
tl;dr This hunk was part of the patch emailed to xen-devel, but was missing
from what ultimately got committed.

https://lore.kernel.org/xen-devel/4164cb728313c3b9fc38cf5e9ecb790ac93a9600.1610748224.git.edvin.torok@citrix.com/
is the patch in question, but was part of a series that had threading issues.
I have a vague recollection that I sourced the commits from a local branch,
which clearly wasn't as up-to-date as I had thought.

Either way, it's my fault/mistake, and this hunk should have been part of what
got comitted.

Fixes: 00c48f57ab36 ("tools/oxenstored: Start live update process")
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Christian Lindig <christian.lindig@citrix.com>
CC: David Scott <dave@recoil.org>
CC: Edwin Torok <edvin.torok@citrix.com>
CC: Rob Hoes <Rob.Hoes@citrix.com>
CC: Henry Wang <Henry.Wang@arm.com>

Found while reviewing the XenServer patchqueue.  This is low risk for 4.17 and
fixes a feature which we thought had been working since 4.15.
---
 tools/ocaml/xenstored/xenstored.ml | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/tools/ocaml/xenstored/xenstored.ml b/tools/ocaml/xenstored/xenstored.ml
index d44ae673c42a..fc90fcdeb5d6 100644
--- a/tools/ocaml/xenstored/xenstored.ml
+++ b/tools/ocaml/xenstored/xenstored.ml
@@ -352,6 +352,11 @@ let _ =
 		rw_sock
 	) in
 
+	(* required for xenstore-control to detect availability of live-update *)
+	Store.mkdir store Perms.Connection.full_rights (Store.Path.of_string "/tool");
+	Store.write store Perms.Connection.full_rights
+		(Store.Path.of_string "/tool/xenstored") Sys.executable_name;
+
 	Sys.set_signal Sys.sighup (Sys.Signal_handle sighup_handler);
 	Sys.set_signal Sys.sigterm (Sys.Signal_handle (fun _ ->
 		info "Received SIGTERM";
-- 
2.11.0
RE: [PATCH for-4.17] tools/oxenstored: Fix Oxenstored Live Update
Posted by Henry Wang 1 year, 6 months ago
Hi Andrew,

> -----Original Message-----
> From: Andrew Cooper <andrew.cooper3@citrix.com>
> Subject: [PATCH for-4.17] tools/oxenstored: Fix Oxenstored Live Update
> 
> tl;dr This hunk was part of the patch emailed to xen-devel, but was missing
> from what ultimately got committed.
> 
> https://lore.kernel.org/xen-
> devel/4164cb728313c3b9fc38cf5e9ecb790ac93a9600.1610748224.git.edvin.t
> orok@citrix.com/
> is the patch in question, but was part of a series that had threading issues.
> I have a vague recollection that I sourced the commits from a local branch,
> which clearly wasn't as up-to-date as I had thought.
> 
> Either way, it's my fault/mistake, and this hunk should have been part of
> what
> got comitted.
> 
> Fixes: 00c48f57ab36 ("tools/oxenstored: Start live update process")
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: Christian Lindig <christian.lindig@citrix.com>
> CC: David Scott <dave@recoil.org>
> CC: Edwin Torok <edvin.torok@citrix.com>
> CC: Rob Hoes <Rob.Hoes@citrix.com>
> CC: Henry Wang <Henry.Wang@arm.com>
> 
> Found while reviewing the XenServer patchqueue.  This is low risk for 4.17
> and
> fixes a feature which we thought had been working since 4.15.

The commit message and above scissors line have described the situation
quite clear, so I don't think there is any reason to ignore this patch.

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


> ---
>  tools/ocaml/xenstored/xenstored.ml | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/tools/ocaml/xenstored/xenstored.ml
> b/tools/ocaml/xenstored/xenstored.ml
> index d44ae673c42a..fc90fcdeb5d6 100644
> --- a/tools/ocaml/xenstored/xenstored.ml
> +++ b/tools/ocaml/xenstored/xenstored.ml
> @@ -352,6 +352,11 @@ let _ =
>  		rw_sock
>  	) in
> 
> +	(* required for xenstore-control to detect availability of live-update *)
> +	Store.mkdir store Perms.Connection.full_rights (Store.Path.of_string
> "/tool");
> +	Store.write store Perms.Connection.full_rights
> +		(Store.Path.of_string "/tool/xenstored")
> Sys.executable_name;
> +
>  	Sys.set_signal Sys.sighup (Sys.Signal_handle sighup_handler);
>  	Sys.set_signal Sys.sigterm (Sys.Signal_handle (fun _ ->
>  		info "Received SIGTERM";
> --
> 2.11.0
Re: [PATCH for-4.17] tools/oxenstored: Fix Oxenstored Live Update
Posted by Edwin Torok 1 year, 6 months ago

> On 20 Oct 2022, at 13:45, Henry Wang <Henry.Wang@arm.com> wrote:
> 
> Hi Andrew,
> 
>> -----Original Message-----
>> From: Andrew Cooper <andrew.cooper3@citrix.com>
>> Subject: [PATCH for-4.17] tools/oxenstored: Fix Oxenstored Live Update
>> 
>> tl;dr This hunk was part of the patch emailed to xen-devel, but was missing
>> from what ultimately got committed.
>> 
>> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.kernel.org%2Fxen-&amp;data=05%7C01%7Cedvin.torok%40citrix.com%7Cfd3a03c987ce448875f808dab29903ee%7C335836de42ef43a2b145348c2ee9ca5b%7C0%7C0%7C638018667544851864%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=8AnK0Bhh9D%2B0KR75I0zeqwB8GB10JLjUtqkwTtprans%3D&amp;reserved=0
>> devel/4164cb728313c3b9fc38cf5e9ecb790ac93a9600.1610748224.git.edvin.t
>> orok@citrix.com/
>> is the patch in question, but was part of a series that had threading issues.
>> I have a vague recollection that I sourced the commits from a local branch,
>> which clearly wasn't as up-to-date as I had thought.
>> 
>> Either way, it's my fault/mistake, and this hunk should have been part of
>> what
>> got comitted.
>> 
>> Fixes: 00c48f57ab36 ("tools/oxenstored: Start live update process")
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> ---
>> CC: Christian Lindig <christian.lindig@citrix.com>
>> CC: David Scott <dave@recoil.org>
>> CC: Edwin Torok <edvin.torok@citrix.com>
>> CC: Rob Hoes <Rob.Hoes@citrix.com>
>> CC: Henry Wang <Henry.Wang@arm.com>
>> 
>> Found while reviewing the XenServer patchqueue.  This is low risk for 4.17
>> and
>> fixes a feature which we thought had been working since 4.15.
> 
> The commit message and above scissors line have described the situation
> quite clear, so I don't think there is any reason to ignore this patch.
> 
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Thanks.
Further testing has revealed another bug, patch here:
 https://lore.kernel.org/xen-devel/12d90632bf881e96e0b6c256df193f00df187dc1.1666284745.git.edvin.torok@citrix.com/T/#u

For convenience the commit is also available from git:
 https://github.com/edwintorok/xen/commit/12d90632bf881e96e0b6c256df193f00df187dc1

With both of these patches a smoketest 'xenstore-control live-update' with a stopped toolstack works now.

Best regards,
--Edwin

> 
> Kind regards,
> Henry
> 
> 
>> ---
>> tools/ocaml/xenstored/xenstored.ml | 5 +++++
>> 1 file changed, 5 insertions(+)
>> 
>> diff --git a/tools/ocaml/xenstored/xenstored.ml
>> b/tools/ocaml/xenstored/xenstored.ml
>> index d44ae673c42a..fc90fcdeb5d6 100644
>> --- a/tools/ocaml/xenstored/xenstored.ml
>> +++ b/tools/ocaml/xenstored/xenstored.ml
>> @@ -352,6 +352,11 @@ let _ =
>> 		rw_sock
>> 	) in
>> 
>> +	(* required for xenstore-control to detect availability of live-update *)
>> +	Store.mkdir store Perms.Connection.full_rights (Store.Path.of_string
>> "/tool");
>> +	Store.write store Perms.Connection.full_rights
>> +		(Store.Path.of_string "/tool/xenstored")
>> Sys.executable_name;
>> +
>> 	Sys.set_signal Sys.sighup (Sys.Signal_handle sighup_handler);
>> 	Sys.set_signal Sys.sigterm (Sys.Signal_handle (fun _ ->
>> 		info "Received SIGTERM";
>> --
>> 2.11.0
> 
Re: [PATCH for-4.17] tools/oxenstored: Fix Oxenstored Live Update
Posted by Christian Lindig 1 year, 6 months ago

On 20 Oct 2022, at 17:56, Edwin Torok <edvin.torok@citrix.com<mailto:edvin.torok@citrix.com>> wrote:

Further testing has revealed another bug, patch here:
https://lore.kernel.org/xen-devel/12d90632bf881e96e0b6c256df193f00df187dc1.1666284745.git.edvin.torok@citrix.com/T/#u

For convenience the commit is also available from git:
https://github.com/edwintorok/xen/commit/12d90632bf881e96e0b6c256df193f00df187dc1

With both of these patches a smoketest 'xenstore-control live-update' with a stopped toolstack works now.

Acked-by: Christian Lindig <christian.lindig@citrix.com<mailto:christian.lindig@citrix.com>>

Re: [PATCH for-4.17] tools/oxenstored: Fix Oxenstored Live Update
Posted by Christian Lindig 1 year, 6 months ago

On 20 Oct 2022, at 12:38, Andrew Cooper <andrew.cooper3@citrix.com<mailto:andrew.cooper3@citrix.com>> wrote:

tl;dr This hunk was part of the patch emailed to xen-devel, but was missing
from what ultimately got committed.

https://lore.kernel.org/xen-devel/4164cb728313c3b9fc38cf5e9ecb790ac93a9600.1610748224.git.edvin.torok@citrix.com/
is the patch in question, but was part of a series that had threading issues.
I have a vague recollection that I sourced the commits from a local branch,
which clearly wasn't as up-to-date as I had thought.

Either way, it's my fault/mistake, and this hunk should have been part of what
got comitted.

Fixes: 00c48f57ab36 ("tools/oxenstored: Start live update process")
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com<mailto:andrew.cooper3@citrix.com>>

Acked-by: Christian Lindig <christian.lindig@citrix.com<mailto:christian.lindig@citrix.com>>