qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 7/7] KVM regsync: Fix do_kvm_cpu_synchronize_sta


From: Alexander Graf
Subject: Re: [Qemu-devel] [PATCH 7/7] KVM regsync: Fix do_kvm_cpu_synchronize_state data integrity issue
Date: Fri, 4 Jan 2013 17:27:42 +0100

On 04.01.2013, at 16:25, Jason J. Herne wrote:

> If I've followed the conversation correctly this is what needs to be done:
> 
> 1. Remove the level parameters from kvm_arch_get_registers and 
> kvm_arch_put_registers.
> 
> 2. Add a new bitmap parameter to kvm_arch_get_registers and 
> kvm_arch_put_registers.

I would combine these into "replace levels with bitmap".

> 3. Define a bit that correlates to our current notion of "all runtime 
> registers".  This bit, and all bits in this bitmap, would be architecture 
> specific.

Why would that bit be architecture specific? "All runtime registers" == 
"registers that gdb can access" IIRC. The implementation on what exactly that 
means obviously is architecture specific, but the bit itself would not be, as 
the gdbstub wants to be able to synchronize in arch independent code.

> 4. Remove the cpustate->kvm_sync_dirty field.  Replace it with a bitmap that 
> tracks which bits are dirty and need to be synced back to KVM-land.
> 
> 5. As we do today, we'll assume registers are dirty and turn on their 
> corresponding bit in this new bitmap whenever we "get" the registers from KVM.

Yes. Changing these semantics is nothing for today :).

> 6. Add other bits as needed on a case by case basis.
> 
> Does this seem to match what was discussed, and what we want to do?

It's probably the best way forward, keeping everyone happy.

Please coordinate with Bharat on who actually wants to sit down to implement 
this. Or if you're quick you might be able to beat him to it regardless thanks 
to time zones :).


Alex




reply via email to

[Prev in Thread] Current Thread [Next in Thread]