aboutsummaryrefslogtreecommitdiff
path: root/replay
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2020-06-10 09:47:49 -0400
committerPaolo Bonzini <pbonzini@redhat.com>2020-06-26 06:45:30 -0400
commit5d971f9e672507210e77d020d89e0e89165c8fc9 (patch)
tree5d965711aa2e719c8d3b26ab4aa0243dc73bd85f /replay
parent4b7c06837ae0b1ff56473202a42e7e386f53d6db (diff)
memory: Revert "memory: accept mismatching sizes in memory_region_access_valid"
Memory API documentation documents valid .min_access_size and .max_access_size fields and explains that any access outside these boundaries is blocked. This is what devices seem to assume. However this is not what the implementation does: it simply ignores the boundaries unless there's an "accepts" callback. Naturally, this breaks a bunch of devices. Revert to the documented behaviour. Devices that want to allow any access can just drop the valid field, or add the impl field to have accesses converted to appropriate length. Cc: qemu-stable@nongnu.org Reviewed-by: Richard Henderson <rth@twiddle.net> Fixes: CVE-2020-13754 Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1842363 Fixes: a014ed07bd5a ("memory: accept mismatching sizes in memory_region_access_valid") Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Message-Id: <20200610134731.1514409-1-mst@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'replay')
0 files changed, 0 insertions, 0 deletions