[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 24/25] vmstate: port arm cpu
From: |
Richard Henderson |
Subject: |
Re: [Qemu-devel] [PATCH 24/25] vmstate: port arm cpu |
Date: |
Tue, 25 Oct 2011 12:08:55 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:7.0) Gecko/20110927 Thunderbird/7.0 |
On 10/25/2011 11:27 AM, Paul Brook wrote:
>> - /* Avoid mode switch when restoring CPSR. */
>> - env->uncached_cpsr = val & CPSR_M;
>> - cpsr_write(env, val, 0xffffffff);
>> +
>> + env->uncached_cpsr = env->cpsr_vmstate & CPSR_M;
>> + cpsr_write(env, env->cpsr_vmstate, 0xffffffff);
>
> You've removed the helpful comment explaining why this wierdness exists.
> Please put it back.
>
> A comment in cpu.h explaining what cpsr_vmstate is for would also be nice.
> Specifically it's a hack[1] to transfer data between the pre_save/post_load
> hooks and the vmstate machinery. IMO "vmstate" is a sufficiently generic
> term
> that it could be confused with some actual cpu register, especially once we
> get round to implementing the hypervisor extensions.
>
> Paul
>
> [1] Maybe a necessary hack, but still a wart from requiring static table
> driven vmstate descriptions.
I wonder if we shouldn't make it easier to do what I do for Alpha
with the rather different hack for the fpcr.
That might avoid some of the other pre/post_load hooks, and the
extra data fields that requires in the cpu structure.
r~
- Re: [Qemu-devel] [PATCH 03/25] vmstate: make all architectures export a way to migrate cpu's, (continued)
- [Qemu-devel] [PATCH 08/25] vmstate: port cris cpu to vmstate, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 09/25] vmstate: machine.c is only compiled for !CONFIG_USER_ONLY, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 11/25] vmstate: introduce float64 arrays, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 10/25] vmstate: introduce float32 arrays, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 17/25] vmstate: make incompatible change for sparc, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 20/25] mips: make tlb an embedded struct instead of a pointer, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 24/25] vmstate: port arm cpu, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 18/25] mips_fulong2e: cpu vmstate already registered in cpu_exec_init, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 19/25] mips: make mvp an embedded struct instead of pointer, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 25/25] vmstate: all cpus converted, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 23/25] arm: save always 32 fpu registers, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 16/25] vmstate: port sparc cpu, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 22/25] vmstate: port mips cpu, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 21/25] mips: bump migration version to 4, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 14/25] vmstate: introduce VMSTATE_VARRAY_MULTIPLY, Juan Quintela, 2011/10/25
- [Qemu-devel] [PATCH 15/25] vmstate: define vmstate_info_uinttls, Juan Quintela, 2011/10/25