[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] linux-user: Fix stale tbs after mmap
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH] linux-user: Fix stale tbs after mmap |
Date: |
Mon, 7 May 2012 11:37:34 +0100 |
On 7 May 2012 10:30, Alexander Graf <address@hidden> wrote:
> @@ -587,6 +587,7 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int
> prot,
> page_dump(stdout);
> printf("\n");
> #endif
> + tb_invalidate_phys_page_range(start, start + len, 0);
> mmap_unlock();
> return start;
The comment at the top of tb_invalidate_phys_page_range() says
"start and end must refer to the same physical page" -- is it
out of date or does that not apply to user-mode?
Do you need to also invalidate the range on munmap() and
mprotect-to-not-executable in order to correctly fault on
the case of:
map something
execute it
unmap it
try to execute it again
? (haven't tested that case but it seems like it might be an issue)
-- PMM