Thanks, applied.
On Sun, Jan 29, 2012 at 14:47, Avi Kivity <a...@redhat.com> wrote:
> Reported-by: Stefan Berger <stef...@linux.vnet.ibm.com>
> Signed-off-by: Avi Kivity <a...@redhat.com>
> ---
> exec-obsolete.h | 10 ++++++----
> 1 files changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/exec-obsolete.h b/exec-obsolete.h
> index 03cf35e..d2749d3 100644
> --- a/exec-obsolete.h
> +++ b/exec-obsolete.h
> @@ -83,9 +83,10 @@ static inline void
> cpu_physical_memory_set_dirty_range(ram_addr_t start,
> uint8_t *p;
> ram_addr_t addr, end;
>
> - end = start + length;
> + end = TARGET_PAGE_ALIGN(start + length);
> + start &= TARGET_PAGE_MASK;
> p = ram_list.phys_dirty + (start >> TARGET_PAGE_BITS);
> - for (addr = start; addr <= end; addr += TARGET_PAGE_SIZE) {
> + for (addr = start; addr < end; addr += TARGET_PAGE_SIZE) {
> *p++ |= dirty_flags;
> }
> }
> @@ -98,10 +99,11 @@ static inline void
> cpu_physical_memory_mask_dirty_range(ram_addr_t start,
> uint8_t *p;
> ram_addr_t addr, end;
>
> - end = start + length;
> + end = TARGET_PAGE_ALIGN(start + length);
> + start &= TARGET_PAGE_MASK;
> mask = ~dirty_flags;
> p = ram_list.phys_dirty + (start >> TARGET_PAGE_BITS);
> - for (addr = start; addr <= end; addr += TARGET_PAGE_SIZE) {
> + for (addr = start; addr < end; addr += TARGET_PAGE_SIZE) {
> *p++ &= mask;
> }
> }
> --
> 1.7.7.1
>