[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 28/28] memory: cpu_physical_memory_clear_dirty_r
From: |
Richard Henderson |
Subject: |
Re: [Qemu-devel] [PATCH 28/28] memory: cpu_physical_memory_clear_dirty_range() now uses bitmap operations |
Date: |
Wed, 09 Oct 2013 11:16:22 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130923 Thunderbird/17.0.9 |
On 10/09/2013 04:28 AM, Juan Quintela wrote:
> We were clearing a range of bits, so use bitmap_set().
Comment is slightly wrong. ;-)
>
> Signed-off-by: Juan Quintela <address@hidden>
> ---
> include/exec/memory-internal.h | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/include/exec/memory-internal.h b/include/exec/memory-internal.h
> index 2f704e8..d46570e 100644
> --- a/include/exec/memory-internal.h
> +++ b/include/exec/memory-internal.h
> @@ -95,13 +95,11 @@ static inline void
> cpu_physical_memory_clear_dirty_range(ram_addr_t start,
> ram_addr_t length,
> unsigned client)
> {
> - ram_addr_t addr, end;
> + unsigned long end, page;
>
> - end = TARGET_PAGE_ALIGN(start + length);
> - start &= TARGET_PAGE_MASK;
> - for (addr = start; addr < end; addr += TARGET_PAGE_SIZE) {
> - clear_bit(addr >> TARGET_PAGE_BITS, ram_list.dirty_memory[client]);
> - }
> + end = TARGET_PAGE_ALIGN(start + length) >> TARGET_PAGE_BITS;
> + page = start >> TARGET_PAGE_BITS;
> + bitmap_clear(ram_list.dirty_memory[client], page, end - page);
- [Qemu-devel] [PATCH 19/28] memory: split dirty bitmap into three, (continued)
- [Qemu-devel] [PATCH 19/28] memory: split dirty bitmap into three, Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 20/28] memory: unfold cpu_physical_memory_clear_dirty_flag() in its only user, Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 21/28] memory: unfold cpu_physical_memory_set_dirty() in its only user, Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 23/28] memory: make cpu_physical_memory_get_dirty() the main function, Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 22/28] memory: unfold cpu_physical_memory_set_dirty_flag(), Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 25/28] memory: s/mask/clear/ cpu_physical_memory_mask_dirty_range, Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 24/28] memory: cpu_physical_memory_get_dirty() is used as returning a bool, Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 26/28] memory: use find_next_bit() to find dirty bits, Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 27/28] memory: cpu_physical_memory_set_dirty_range() now uses bitmap operations, Juan Quintela, 2013/10/09
- [Qemu-devel] [PATCH 28/28] memory: cpu_physical_memory_clear_dirty_range() now uses bitmap operations, Juan Quintela, 2013/10/09
- Re: [Qemu-devel] [PATCH 28/28] memory: cpu_physical_memory_clear_dirty_range() now uses bitmap operations,
Richard Henderson <=
- Re: [Qemu-devel] [RFC 00/28] bitmap handling optimization, Paolo Bonzini, 2013/10/09