diff options
| author | Jason Wang | 2016-12-30 11:09:13 +0100 |
|---|---|---|
| committer | Michael S. Tsirkin | 2017-01-10 04:56:58 +0100 |
| commit | 052c8fa9983f553fdfa0d61034774070dd639c2b (patch) | |
| tree | 5883498a87ba78e92ec7d11e91cf1d813fab3050 /include/exec | |
| parent | intel_iommu: allocate new key when creating new address space (diff) | |
| download | qemu-052c8fa9983f553fdfa0d61034774070dd639c2b.tar.gz qemu-052c8fa9983f553fdfa0d61034774070dd639c2b.tar.xz qemu-052c8fa9983f553fdfa0d61034774070dd639c2b.zip | |
exec: introduce address_space_get_iotlb_entry()
This patch introduces a helper to query the iotlb entry for a
possible iova. This will be used by later device IOTLB API to enable
the capability for a dataplane (e.g vhost) to query the IOTLB.
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Peter Crosthwaite <crosthwaite.peter@gmail.com>
Cc: Richard Henderson <rth@twiddle.net>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'include/exec')
| -rw-r--r-- | include/exec/memory.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/exec/memory.h b/include/exec/memory.h index 64560f61b4..358edfbbc7 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -1537,6 +1537,11 @@ void stl_le_phys_cached(MemoryRegionCache *cache, hwaddr addr, uint32_t val); void stl_be_phys_cached(MemoryRegionCache *cache, hwaddr addr, uint32_t val); void stq_le_phys_cached(MemoryRegionCache *cache, hwaddr addr, uint64_t val); void stq_be_phys_cached(MemoryRegionCache *cache, hwaddr addr, uint64_t val); +/* address_space_get_iotlb_entry: translate an address into an IOTLB + * entry. Should be called from an RCU critical section. + */ +IOMMUTLBEntry address_space_get_iotlb_entry(AddressSpace *as, hwaddr addr, + bool is_write); /* address_space_translate: translate an address range into an address space * into a MemoryRegion and an address range into that section. Should be |
