qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCHv2] tcx: Fix 24-bit display mode


From: Blue Swirl
Subject: Re: [Qemu-devel] [PATCHv2] tcx: Fix 24-bit display mode
Date: Sun, 2 Jun 2013 17:01:23 +0000

Thanks, applied.

On Sun, Jun 2, 2013 at 4:23 PM, Mark Cave-Ayland
<address@hidden> wrote:
> Commit d08151bf (conversion of tcx to the memory API) broke the 24-bit mode of
> the tcx display adapter by accidentally passing in the final address of the
> dirty region to memory_region_reset_dirty() instead of its size.
>
> Signed-off-by: Mark Cave-Ayland <address@hidden>
> ---
>  hw/display/tcx.c |   10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/hw/display/tcx.c b/hw/display/tcx.c
> index fc27f45..995641c 100644
> --- a/hw/display/tcx.c
> +++ b/hw/display/tcx.c
> @@ -193,15 +193,16 @@ static inline void reset_dirty(TCXState *ts, ram_addr_t 
> page_min,
>                                ram_addr_t cpage)
>  {
>      memory_region_reset_dirty(&ts->vram_mem,
> -                              page_min, page_max + TARGET_PAGE_SIZE,
> +                              page_min,
> +                              (page_max - page_min) + TARGET_PAGE_SIZE,
>                                DIRTY_MEMORY_VGA);
>      memory_region_reset_dirty(&ts->vram_mem,
>                                page24 + page_min * 4,
> -                              page24 + page_max * 4 + TARGET_PAGE_SIZE,
> +                              (page_max - page_min) * 4 + TARGET_PAGE_SIZE,
>                                DIRTY_MEMORY_VGA);
>      memory_region_reset_dirty(&ts->vram_mem,
>                                cpage + page_min * 4,
> -                              cpage + page_max * 4 + TARGET_PAGE_SIZE,
> +                              (page_max - page_min) * 4 + TARGET_PAGE_SIZE,
>                                DIRTY_MEMORY_VGA);
>  }
>
> @@ -285,7 +286,8 @@ static void tcx_update_display(void *opaque)
>      /* reset modified pages */
>      if (page_max >= page_min) {
>          memory_region_reset_dirty(&ts->vram_mem,
> -                                  page_min, page_max + TARGET_PAGE_SIZE,
> +                                  page_min,
> +                                  (page_max - page_min) + TARGET_PAGE_SIZE,
>                                    DIRTY_MEMORY_VGA);
>      }
>  }
> --
> 1.7.10.4
>
>



reply via email to

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