]> git.proxmox.com Git - mirror_qemu.git/commit
exec: Resolve subpages in one step except for IOTLB fills
authorJan Kiszka <jan.kiszka@siemens.com>
Sun, 26 May 2013 19:46:51 +0000 (21:46 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 20 Jun 2013 14:32:46 +0000 (16:32 +0200)
commit90260c6c0960b2745d79455ceaa6cb50fb796e02
treef64a6c4ffada3bcf413fb34bd898449b6b1cf2f0
parentf52cc467426e43792eb39f81705766bcb3d9e96a
exec: Resolve subpages in one step except for IOTLB fills

Except for the case of setting the IOTLB entry in TCG mode, we can avoid
the subpage dispatching handlers and do the resolution directly on
address_space_lookup_region. An IOTLB entry describes a full page, not
only the region that the first access to a sub-divided page may return.

This patch therefore introduces a special translation function,
address_space_translate_for_iotlb, that avoids the subpage resolutions.
In contrast, callers of the existing address_space_translate service
will now always receive the terminal memory region section. This will be
important for breaking the BQL and for enabling unaligned memory region.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
cputlb.c
exec.c
include/exec/cputlb.h