On 06/20/2016 06:25 AM, Peter Maydell wrote:
On 19 June 2016 at 19:24, Richard Henderson <r...@twiddle.net> wrote:
On 06/19/2016 02:46 AM, Peter Maydell wrote:
This is supposed to work -- for instance the linux-user/mmap.c
code has support for host pages and target pages not being the same.
In particular for ARM guests TARGET_PAGE_SIZE is 1K but the
host page size is 4K, so the config of "host page larger than
guest" isn't untested.
You're right, it isn't untested, it's completely broken.
:-(
Is there a way we can warn about this which doesn't give
unnecessary warnings for:
(a) the ARM case
(b) things which don't actually care (I'm thinking the
gcc test suite and similar stuff which doesn't actually
mess with mmap in practice)
Not that I'm aware of.
What's worse is that even the gcc testsuite winds up caring, because the guest
binary can't even be mapped, much less run far enough to get to a mmap syscall.
See e.g. that aarch64 64k example, and look at our standard linux-user-0.3 tests.
r~