* staging: unable to restore HVM with Viridian param set
@ 2021-02-01 22:51 Tamas K Lengyel
2021-02-01 22:57 ` Andrew Cooper
0 siblings, 1 reply; 7+ messages in thread
From: Tamas K Lengyel @ 2021-02-01 22:51 UTC (permalink / raw)
To: Xen-devel
Hi all,
trying to restore a Windows VM saved on Xen 4.14 with Xen staging results in:
# xl restore -p /shared/cfg/windows10.save
Loading new save file /shared/cfg/windows10.save (new xl fmt info 0x3/0x0/1475)
Savefile contains xl domain config in JSON format
Parsing config from <saved>
xc: info: Found x86 HVM domain from Xen 4.14
xc: info: Restoring domain
xc: error: set HVM param 9 = 0x0000000000000065 (17 = File exists):
Internal error
xc: error: Restore failed (17 = File exists): Internal error
libxl: error: libxl_stream_read.c:850:libxl__xc_domain_restore_done:
restoring domain: File exists
libxl: error: libxl_create.c:1581:domcreate_rebuild_done: Domain
8:cannot (re-)build domain: -3
libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
8:Non-existant domain
libxl: error: libxl_domain.c:1136:domain_destroy_callback: Domain
8:Unable to destroy guest
libxl: error: libxl_domain.c:1063:domain_destroy_cb: Domain
8:Destruction of domain failed
Running on staging 419cd07895891c6642f29085aee07be72413f08c
Tamas
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: staging: unable to restore HVM with Viridian param set
2021-02-01 22:51 staging: unable to restore HVM with Viridian param set Tamas K Lengyel
@ 2021-02-01 22:57 ` Andrew Cooper
2021-02-02 0:20 ` Igor Druzhinin
0 siblings, 1 reply; 7+ messages in thread
From: Andrew Cooper @ 2021-02-01 22:57 UTC (permalink / raw)
To: Tamas K Lengyel, Xen-devel, Wei Liu, Ian Jackson, Anthony PERARD,
Paul Durrant, Igor Druzhinin
On 01/02/2021 22:51, Tamas K Lengyel wrote:
> Hi all,
> trying to restore a Windows VM saved on Xen 4.14 with Xen staging results in:
>
> # xl restore -p /shared/cfg/windows10.save
> Loading new save file /shared/cfg/windows10.save (new xl fmt info 0x3/0x0/1475)
> Savefile contains xl domain config in JSON format
> Parsing config from <saved>
> xc: info: Found x86 HVM domain from Xen 4.14
> xc: info: Restoring domain
> xc: error: set HVM param 9 = 0x0000000000000065 (17 = File exists):
> Internal error
> xc: error: Restore failed (17 = File exists): Internal error
> libxl: error: libxl_stream_read.c:850:libxl__xc_domain_restore_done:
> restoring domain: File exists
> libxl: error: libxl_create.c:1581:domcreate_rebuild_done: Domain
> 8:cannot (re-)build domain: -3
> libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
> 8:Non-existant domain
> libxl: error: libxl_domain.c:1136:domain_destroy_callback: Domain
> 8:Unable to destroy guest
> libxl: error: libxl_domain.c:1063:domain_destroy_cb: Domain
> 8:Destruction of domain failed
>
> Running on staging 419cd07895891c6642f29085aee07be72413f08c
CC'ing maintainers and those who've edited the code recently.
What is happening is xl/libxl is selecting some viridian settings,
applying them to the domain, and then the migrations stream has a
different set of viridian settings.
For a migrating-in VM, nothing should be set during domain build.
Viridian state has been part of the migrate stream since before mig-v2,
so can be considered to be everywhere relevant now.
~Andrew
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: staging: unable to restore HVM with Viridian param set
2021-02-01 22:57 ` Andrew Cooper
@ 2021-02-02 0:20 ` Igor Druzhinin
2021-02-02 8:35 ` Paul Durrant
0 siblings, 1 reply; 7+ messages in thread
From: Igor Druzhinin @ 2021-02-02 0:20 UTC (permalink / raw)
To: Andrew Cooper, Tamas K Lengyel, Xen-devel, Wei Liu, Ian Jackson,
Anthony PERARD, Paul Durrant
n 01/02/2021 22:57, Andrew Cooper wrote:
> On 01/02/2021 22:51, Tamas K Lengyel wrote:
>> Hi all,
>> trying to restore a Windows VM saved on Xen 4.14 with Xen staging results in:
>>
>> # xl restore -p /shared/cfg/windows10.save
>> Loading new save file /shared/cfg/windows10.save (new xl fmt info 0x3/0x0/1475)
>> Savefile contains xl domain config in JSON format
>> Parsing config from <saved>
>> xc: info: Found x86 HVM domain from Xen 4.14
>> xc: info: Restoring domain
>> xc: error: set HVM param 9 = 0x0000000000000065 (17 = File exists):
>> Internal error
>> xc: error: Restore failed (17 = File exists): Internal error
>> libxl: error: libxl_stream_read.c:850:libxl__xc_domain_restore_done:
>> restoring domain: File exists
>> libxl: error: libxl_create.c:1581:domcreate_rebuild_done: Domain
>> 8:cannot (re-)build domain: -3
>> libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
>> 8:Non-existant domain
>> libxl: error: libxl_domain.c:1136:domain_destroy_callback: Domain
>> 8:Unable to destroy guest
>> libxl: error: libxl_domain.c:1063:domain_destroy_cb: Domain
>> 8:Destruction of domain failed
>>
>> Running on staging 419cd07895891c6642f29085aee07be72413f08c
>
> CC'ing maintainers and those who've edited the code recently.
>
> What is happening is xl/libxl is selecting some viridian settings,
> applying them to the domain, and then the migrations stream has a
> different set of viridian settings.
>
> For a migrating-in VM, nothing should be set during domain build.
> Viridian state has been part of the migrate stream since before mig-v2,
> so can be considered to be everywhere relevant now.
The fallout is likely from my changes that modified default set of viridian
settings. The relevant commits:
983524671031fcfdb24a6c0da988203ebb47aebe
7e5cffcd1e9300cab46a1816b5eb676caaeed2c1
The same config from migrated domains now implies different set of viridian
extensions then those set at the source side. That creates inconsistency in
libxl. I don't really know how to address it properly in libxl other than
don't extend the default set ever.
Igor
^ permalink raw reply [flat|nested] 7+ messages in thread
* RE: staging: unable to restore HVM with Viridian param set
2021-02-02 0:20 ` Igor Druzhinin
@ 2021-02-02 8:35 ` Paul Durrant
2021-02-02 11:40 ` Igor Druzhinin
0 siblings, 1 reply; 7+ messages in thread
From: Paul Durrant @ 2021-02-02 8:35 UTC (permalink / raw)
To: 'Igor Druzhinin', 'Andrew Cooper',
'Tamas K Lengyel', 'Xen-devel', 'Wei Liu',
'Ian Jackson', 'Anthony PERARD'
> -----Original Message-----
> From: Igor Druzhinin <igor.druzhinin@citrix.com>
> Sent: 02 February 2021 00:20
> To: Andrew Cooper <andrew.cooper3@citrix.com>; Tamas K Lengyel <tamas.k.lengyel@gmail.com>; Xen-devel
> <xen-devel@lists.xenproject.org>; Wei Liu <wl@xen.org>; Ian Jackson <iwj@xenproject.org>; Anthony
> PERARD <anthony.perard@citrix.com>; Paul Durrant <paul@xen.org>
> Subject: Re: staging: unable to restore HVM with Viridian param set
>
> n 01/02/2021 22:57, Andrew Cooper wrote:
> > On 01/02/2021 22:51, Tamas K Lengyel wrote:
> >> Hi all,
> >> trying to restore a Windows VM saved on Xen 4.14 with Xen staging results in:
> >>
> >> # xl restore -p /shared/cfg/windows10.save
> >> Loading new save file /shared/cfg/windows10.save (new xl fmt info 0x3/0x0/1475)
> >> Savefile contains xl domain config in JSON format
> >> Parsing config from <saved>
> >> xc: info: Found x86 HVM domain from Xen 4.14
> >> xc: info: Restoring domain
> >> xc: error: set HVM param 9 = 0x0000000000000065 (17 = File exists):
> >> Internal error
> >> xc: error: Restore failed (17 = File exists): Internal error
> >> libxl: error: libxl_stream_read.c:850:libxl__xc_domain_restore_done:
> >> restoring domain: File exists
> >> libxl: error: libxl_create.c:1581:domcreate_rebuild_done: Domain
> >> 8:cannot (re-)build domain: -3
> >> libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
> >> 8:Non-existant domain
> >> libxl: error: libxl_domain.c:1136:domain_destroy_callback: Domain
> >> 8:Unable to destroy guest
> >> libxl: error: libxl_domain.c:1063:domain_destroy_cb: Domain
> >> 8:Destruction of domain failed
> >>
> >> Running on staging 419cd07895891c6642f29085aee07be72413f08c
> >
> > CC'ing maintainers and those who've edited the code recently.
> >
> > What is happening is xl/libxl is selecting some viridian settings,
> > applying them to the domain, and then the migrations stream has a
> > different set of viridian settings.
> >
> > For a migrating-in VM, nothing should be set during domain build.
> > Viridian state has been part of the migrate stream since before mig-v2,
> > so can be considered to be everywhere relevant now.
>
> The fallout is likely from my changes that modified default set of viridian
> settings. The relevant commits:
> 983524671031fcfdb24a6c0da988203ebb47aebe
> 7e5cffcd1e9300cab46a1816b5eb676caaeed2c1
>
> The same config from migrated domains now implies different set of viridian
> extensions then those set at the source side. That creates inconsistency in
> libxl. I don't really know how to address it properly in libxl other than
> don't extend the default set ever.
>
Surely it should be addressed properly in libxl by not messing with the viridian settings on migrate-in/resume, as Andrew says? TBH I thought this was already the case. There should be no problem with adding to the default set as this is just an xl/libxl concept; the param flags in Xen are always define the *exact* set of enabled enlightenments.
Paul
> Igor
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: staging: unable to restore HVM with Viridian param set
2021-02-02 8:35 ` Paul Durrant
@ 2021-02-02 11:40 ` Igor Druzhinin
2021-02-02 11:51 ` Ian Jackson
0 siblings, 1 reply; 7+ messages in thread
From: Igor Druzhinin @ 2021-02-02 11:40 UTC (permalink / raw)
To: paul, 'Andrew Cooper', 'Tamas K Lengyel',
'Xen-devel', 'Wei Liu', 'Ian Jackson',
'Anthony PERARD'
On 02/02/2021 08:35, Paul Durrant wrote:
>> -----Original Message-----
>> From: Igor Druzhinin <igor.druzhinin@citrix.com>
>> Sent: 02 February 2021 00:20
>> To: Andrew Cooper <andrew.cooper3@citrix.com>; Tamas K Lengyel <tamas.k.lengyel@gmail.com>; Xen-devel
>> <xen-devel@lists.xenproject.org>; Wei Liu <wl@xen.org>; Ian Jackson <iwj@xenproject.org>; Anthony
>> PERARD <anthony.perard@citrix.com>; Paul Durrant <paul@xen.org>
>> Subject: Re: staging: unable to restore HVM with Viridian param set
>>
>> n 01/02/2021 22:57, Andrew Cooper wrote:
>>> On 01/02/2021 22:51, Tamas K Lengyel wrote:
>>>> Hi all,
>>>> trying to restore a Windows VM saved on Xen 4.14 with Xen staging results in:
>>>>
>>>> # xl restore -p /shared/cfg/windows10.save
>>>> Loading new save file /shared/cfg/windows10.save (new xl fmt info 0x3/0x0/1475)
>>>> Savefile contains xl domain config in JSON format
>>>> Parsing config from <saved>
>>>> xc: info: Found x86 HVM domain from Xen 4.14
>>>> xc: info: Restoring domain
>>>> xc: error: set HVM param 9 = 0x0000000000000065 (17 = File exists):
>>>> Internal error
>>>> xc: error: Restore failed (17 = File exists): Internal error
>>>> libxl: error: libxl_stream_read.c:850:libxl__xc_domain_restore_done:
>>>> restoring domain: File exists
>>>> libxl: error: libxl_create.c:1581:domcreate_rebuild_done: Domain
>>>> 8:cannot (re-)build domain: -3
>>>> libxl: error: libxl_domain.c:1182:libxl__destroy_domid: Domain
>>>> 8:Non-existant domain
>>>> libxl: error: libxl_domain.c:1136:domain_destroy_callback: Domain
>>>> 8:Unable to destroy guest
>>>> libxl: error: libxl_domain.c:1063:domain_destroy_cb: Domain
>>>> 8:Destruction of domain failed
>>>>
>>>> Running on staging 419cd07895891c6642f29085aee07be72413f08c
>>>
>>> CC'ing maintainers and those who've edited the code recently.
>>>
>>> What is happening is xl/libxl is selecting some viridian settings,
>>> applying them to the domain, and then the migrations stream has a
>>> different set of viridian settings.
>>>
>>> For a migrating-in VM, nothing should be set during domain build.
>>> Viridian state has been part of the migrate stream since before mig-v2,
>>> so can be considered to be everywhere relevant now.
>>
>> The fallout is likely from my changes that modified default set of viridian
>> settings. The relevant commits:
>> 983524671031fcfdb24a6c0da988203ebb47aebe
>> 7e5cffcd1e9300cab46a1816b5eb676caaeed2c1
>>
>> The same config from migrated domains now implies different set of viridian
>> extensions then those set at the source side. That creates inconsistency in
>> libxl. I don't really know how to address it properly in libxl other than
>> don't extend the default set ever.
>>
>
> Surely it should be addressed properly in libxl by not messing with the viridian settings on migrate-in/resume, as Andrew says? TBH I thought this was already the case. There should be no problem with adding to the default set as this is just an xl/libxl concept; the param flags in Xen are always define the *exact* set of enabled enlightenments.
If maintainers agree with this approach I can make a patch.
Igor
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: staging: unable to restore HVM with Viridian param set
2021-02-02 11:40 ` Igor Druzhinin
@ 2021-02-02 11:51 ` Ian Jackson
2021-02-02 11:55 ` Andrew Cooper
0 siblings, 1 reply; 7+ messages in thread
From: Ian Jackson @ 2021-02-02 11:51 UTC (permalink / raw)
To: Igor Druzhinin
Cc: paul, 'Andrew Cooper', 'Tamas K Lengyel',
'Xen-devel', 'Wei Liu', 'Anthony PERARD'
Igor Druzhinin writes ("Re: staging: unable to restore HVM with Viridian param set"):
> On 02/02/2021 08:35, Paul Durrant wrote:
> > Surely it should be addressed properly in libxl by not messing with the viridian settings on migrate-in/resume, as Andrew says? TBH I thought this was already the case. There should be no problem with adding to the default set as this is just an xl/libxl concept; the param flags in Xen are always define the *exact* set of enabled enlightenments.
>
> If maintainers agree with this approach I can make a patch.
If Andy is in favour of this approach then certainly it is fine by me.
FTR, preemptively,
Release-Acked-by: Ian Jackson <iwj@xenproject.org>
although as this is a bugfix it probably doesn't need one.
Ian.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: staging: unable to restore HVM with Viridian param set
2021-02-02 11:51 ` Ian Jackson
@ 2021-02-02 11:55 ` Andrew Cooper
0 siblings, 0 replies; 7+ messages in thread
From: Andrew Cooper @ 2021-02-02 11:55 UTC (permalink / raw)
To: Ian Jackson, Igor Druzhinin
Cc: paul, 'Tamas K Lengyel', 'Xen-devel',
'Wei Liu', 'Anthony PERARD'
On 02/02/2021 11:51, Ian Jackson wrote:
> Igor Druzhinin writes ("Re: staging: unable to restore HVM with Viridian param set"):
>> On 02/02/2021 08:35, Paul Durrant wrote:
>>> Surely it should be addressed properly in libxl by not messing with the viridian settings on migrate-in/resume, as Andrew says? TBH I thought this was already the case. There should be no problem with adding to the default set as this is just an xl/libxl concept; the param flags in Xen are always define the *exact* set of enabled enlightenments.
>> If maintainers agree with this approach I can make a patch.
> If Andy is in favour of this approach then certainly it is fine by me.
Yeah - in the case that we're restoring from a suspend image or migrate,
just skip setting the viridian flags in build. They are in the the
stream, and will be restored later.
~Andrew
P.S. This is going to get even more complicated when it all shifts into
CPUID settings, but it needs to happen at some point.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-02-02 11:56 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-01 22:51 staging: unable to restore HVM with Viridian param set Tamas K Lengyel
2021-02-01 22:57 ` Andrew Cooper
2021-02-02 0:20 ` Igor Druzhinin
2021-02-02 8:35 ` Paul Durrant
2021-02-02 11:40 ` Igor Druzhinin
2021-02-02 11:51 ` Ian Jackson
2021-02-02 11:55 ` Andrew Cooper
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.