]> git.proxmox.com Git - mirror_qemu.git/commit - exec.c
exec: Respect as_translate_internal length clamp
authorPeter Crosthwaite <peter.crosthwaite@xilinx.com>
Tue, 17 Mar 2015 05:35:54 +0000 (22:35 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 27 Apr 2015 16:24:19 +0000 (18:24 +0200)
commit23820dbfc79d1c9dce090b4c555994f2bb6a69b3
tree55ed9c764b3a5b5fbf0ca7538c87372fffc4c7b0
parent4080a13c11398d684668d286da27b6f8ee668e44
exec: Respect as_translate_internal length clamp

address_space_translate_internal will clamp the *plen length argument
based on the size of the memory region being queried. The iommu walker
logic in addresss_space_translate was ignoring this by discarding the
post fn call value of *plen. Fix by just always using *plen as the
length argument throughout the fn, removing the len local variable.

This fixes a bootloader bug when a single elf section spans multiple
QEMU memory regions.

Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Message-Id: <1426570554-15940-1-git-send-email-peter.crosthwaite@xilinx.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
exec.c