[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 05/30] memory: assert that PhysPageEntry's ptr d
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH 05/30] memory: assert that PhysPageEntry's ptr does not overflow |
Date: |
Thu, 23 May 2013 18:36:50 +0100 |
On 21 May 2013 11:57, Paolo Bonzini <address@hidden> wrote:
> While sized to 15 bits in PhysPageEntry, the ptr field is ORed into the
> iotlb entries together with a page-aligned pointer. The ptr field must
> not overflow into this page-aligned value, assert that it is smaller than
> the page size.
>
> Signed-off-by: Paolo Bonzini <address@hidden>
> ---
> exec.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/exec.c b/exec.c
> index 1355661..380245f 100644
> --- a/exec.c
> +++ b/exec.c
> @@ -713,6 +713,8 @@ static void destroy_all_mappings(AddressSpaceDispatch *d)
>
> static uint16_t phys_section_add(MemoryRegionSection *section)
> {
You might consider having the rationale for the assert in a comment
here as well as in the commit log.
> + assert(phys_sections_nb < TARGET_PAGE_SIZE);
> +
> if (phys_sections_nb == phys_sections_nb_alloc) {
> phys_sections_nb_alloc = MAX(phys_sections_nb_alloc * 2, 16);
> phys_sections = g_renew(MemoryRegionSection, phys_sections,
Reviewed-by: Peter Maydell <address@hidden>
-- PMM
- [Qemu-devel] [PATCH 00/30] Introduction of IOMMUs into the memory API, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 01/30] exec: remove obsolete comment, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 02/30] exec: eliminate qemu_put_ram_ptr, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 03/30] exec: make qemu_get_ram_ptr private, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 04/30] exec: eliminate stq_phys_notdirty, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 05/30] memory: assert that PhysPageEntry's ptr does not overflow, Paolo Bonzini, 2013/05/21
- Re: [Qemu-devel] [PATCH 05/30] memory: assert that PhysPageEntry's ptr does not overflow,
Peter Maydell <=
- [Qemu-devel] [PATCH 06/30] memory: allow memory_region_find() to run on non-root memory regions, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 07/30] memory: Replace open-coded memory_region_is_romd, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 08/30] memory: Rename readable flag to romd_mode, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 09/30] memory: do not duplicate memory_region_destructor_none, Paolo Bonzini, 2013/05/21
- [Qemu-devel] [PATCH 10/30] memory: make memory_global_sync_dirty_bitmap take an AddressSpace, Paolo Bonzini, 2013/05/21