* 32/64 resotre broken
@ 2007-01-31 9:53 Zhai, Edwin
2007-01-31 12:55 ` Cs 13594 - broken? Petersson, Mats
0 siblings, 1 reply; 4+ messages in thread
From: Zhai, Edwin @ 2007-01-31 9:53 UTC (permalink / raw)
To: Keir; +Cc: xen-devel, Zhai, Edwin
keir,
i'm almost sure following change set break 32b HVM guest save/restore on
64b hypvisor:
r13594: Make domctl/sysctl interfaces 32-/64-bit invariant.
restoring 32b linux cause a guest kernel panic, but restoring saved
image from previous changeset is okay. i.e. saved image become damaged
in r13594.
according the log, hvm context seems to be okay. i doubt whether vcpu
context saving process is changed.
do you have any idea?
thanks,
--
best rgds,
edwin
^ permalink raw reply [flat|nested] 4+ messages in thread
* Cs 13594 - broken?
2007-01-31 9:53 32/64 resotre broken Zhai, Edwin
@ 2007-01-31 12:55 ` Petersson, Mats
2007-01-31 13:01 ` Tim Deegan
0 siblings, 1 reply; 4+ messages in thread
From: Petersson, Mats @ 2007-01-31 12:55 UTC (permalink / raw)
To: edwin.zhai, Keir; +Cc: xen-devel
> i'm almost sure following change set break 32b HVM guest
> save/restore on
> 64b hypvisor:
> r13594: Make domctl/sysctl interfaces 32-/64-bit invariant.
>
> restoring 32b linux cause a guest kernel panic, but restoring saved
> image from previous changeset is okay. i.e. saved image
> become damaged
> in r13594.
Looking at that patch (and the current changeset matches the patch for
the below code with about +30 lines offset), I think this code is
broken:
@@ -976,10 +976,16 @@ int xc_linux_save(int xc_handle, int io_
goto out;
}
- if (xc_get_pfn_type_batch(xc_handle, dom, batch, pfn_type))
{
+ for ( j = 0; j < batch; j++ )
+ ((uint32_t *)pfn_type)[i] = pfn_type[i];
Shouldn't that be [j] in both places?
+ if ( xc_get_pfn_type_batch(xc_handle, dom, batch,
+ (uint32_t *)pfn_type) )
+ {
ERROR("get_pfn_type_batch failed");
goto out;
}
+ for ( j = batch-1; j >= 0; j-- )
+ pfn_type[i] = ((uint32_t *)pfn_type)[i];
And here, as well?
Admittedly, this probably won't fix the 32/64 HVM restore being broken,
but I doubt that the code ACTUALLY works as it stands today.
I'm still trying to find a reason for the restore not working...
--
Mats
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Cs 13594 - broken?
2007-01-31 12:55 ` Cs 13594 - broken? Petersson, Mats
@ 2007-01-31 13:01 ` Tim Deegan
2007-01-31 13:07 ` Petersson, Mats
0 siblings, 1 reply; 4+ messages in thread
From: Tim Deegan @ 2007-01-31 13:01 UTC (permalink / raw)
To: Petersson, Mats; +Cc: xen-devel, edwin.zhai
At 13:55 +0100 on 31 Jan (1170251725), Petersson, Mats wrote:
> Shouldn't that be [j] in both places?
Yep; that's fixed in the staging tree, but hasn't made it to the public
tree yet.
Cheers,
Tim.
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: Cs 13594 - broken?
2007-01-31 13:01 ` Tim Deegan
@ 2007-01-31 13:07 ` Petersson, Mats
0 siblings, 0 replies; 4+ messages in thread
From: Petersson, Mats @ 2007-01-31 13:07 UTC (permalink / raw)
To: Tim Deegan; +Cc: xen-devel, edwin.zhai
> -----Original Message-----
> From: Tim Deegan [mailto:Tim.Deegan@xensource.com]
> Sent: 31 January 2007 13:01
> To: Petersson, Mats
> Cc: edwin.zhai@intel.com; Keir; xen-devel@lists.xensource.com
> Subject: Re: [Xen-devel] Cs 13594 - broken?
>
> At 13:55 +0100 on 31 Jan (1170251725), Petersson, Mats wrote:
> > Shouldn't that be [j] in both places?
>
> Yep; that's fixed in the staging tree, but hasn't made it to
> the public
> tree yet.
So it is - sorry for the duplicated error report... :-(
--
Mats
>
> Cheers,
>
> Tim.
>
>
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-01-31 13:07 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-01-31 9:53 32/64 resotre broken Zhai, Edwin
2007-01-31 12:55 ` Cs 13594 - broken? Petersson, Mats
2007-01-31 13:01 ` Tim Deegan
2007-01-31 13:07 ` Petersson, Mats
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.