qemu/softmmu
Eric Auger f14fb6c2db dma: Introduce dma_aligned_pow2_mask()
Currently get_naturally_aligned_size() is used by the intel iommu
to compute the maximum invalidation range based on @size which is
a power of 2 while being aligned with the @start address and less
than the maximum range defined by @gaw.

This helper is also useful for other iommu devices (virtio-iommu,
SMMUv3) to make sure IOMMU UNMAP notifiers only are called with
power of 2 range sizes.

Let's move this latter into dma-helpers.c and rename it into
dma_aligned_pow2_mask(). Also rewrite the helper so that it
accomodates UINT64_MAX values for the size mask and max mask.
It now returns a mask instead of a size. Change the caller.

Signed-off-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Message-id: 20210309102742.30442-3-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2021-03-12 12:40:10 +00:00
..
arch_init.c
balloon.c
bootdevice.c
cpu-throttle.c cpu-throttle: Remove timer_mod() from cpu_throttle_set() 2021-02-08 15:15:32 +01:00
cpu-timers.c qtest: delete superfluous inclusions of qtest.h 2021-03-09 06:03:53 +01:00
cpus.c sev/i386: Don't allow a system reset under an SEV-ES guest 2021-02-16 17:15:39 +01:00
datadir.c
device_tree.c device_tree: add qemu_fdt_setprop_string_array helper 2021-03-10 15:34:11 +00:00
dma-helpers.c dma: Introduce dma_aligned_pow2_mask() 2021-03-12 12:40:10 +00:00
globals.c
icount.c
ioport.c
main.c
memory_mapping.c
memory.c sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
meson.build
physmem.c accel/tcg: move CF_CLUSTER calculation to curr_cflags 2021-03-06 11:50:50 -08:00
qdev-monitor.c
qemu-seccomp.c seccomp: Replace the word 'blacklist' 2021-03-09 22:15:19 +01:00
qtest.c accel: extend AccelState and AccelClass to user-mode 2021-02-05 10:24:15 -10:00
rtc.c qom: Allow optional sugar props 2021-02-08 16:57:37 +11:00
runstate-action.c
runstate.c sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
timers-state.h
tpm.c qapi: More complex uses of QAPI_LIST_APPEND 2021-01-28 08:08:45 +01:00
trace-events
trace.h
vl.c semihosting: Move include/hw/semihosting/ -> include/semihosting/ 2021-03-10 15:34:12 +00:00