On 26.02.2012, at 22:41, Blue Swirl wrote:

> On Fri, Feb 24, 2012 at 00:23, David Gibson <da...@gibson.dropbear.id.au> 
> wrote:
>> From: Benjamin Herrenschmidt <b...@kernel.crashing.org>
>> 
>> If the kernel page size is larger than TARGET_PAGE_SIZE, which
>> happens for example on ppc64 with kernels compiled for 64K pages,
>> the dirty tracking doesn't work.
> 
> I think a better solution would be to push this to memory API and
> underlying exec.c dirty tracking so that they use the same page size
> as kernel (only in this KVM case, in general dirty tracking should
> match TARGET_PAGE_SIZE granularity).

Yeah, that would allow us to make sure we only align MMIO regions where we can, 
but I don't think it's an easy change to make. And this way the common page 
size throughout QEMU is TARGET_PAGE_SIZE, which other pieces of code rely on. 
Also, dynamically changing TARGET_PAGE_SIZE has unknown performance 
implications.

So for the time being, I definitely think this is the right approach. It's easy 
and isolated :).


Alex


Reply via email to