Hi Boris:
Thanks for your review.
On 6/2/2021 9:16 AM, Boris Ostrovsky wrote:
On 5/30/21 11:06 AM, Tianyu Lan wrote:
@@ -91,6 +92,6 @@ int pci_xen_swiotlb_init_late(void)
EXPORT_SYMBOL_GPL(pci_xen_swiotlb_init_late);
IOMMU_INIT_FINISH(2,
- NULL,
+ hyperv_swiotlb_detect,
pci_xen_swiotlb_init,
NULL);
Could you explain this change?
Hyper-V allocates its own swiotlb bounce buffer and the default
swiotlb buffer should not be allocated. swiotlb_init() in
pci_swiotlb_init() is to allocate default swiotlb buffer.
To achieve this, put hyperv_swiotlb_detect() as the first entry in the
iommu_table_entry list. The detect loop in the pci_iommu_alloc() will
exit once hyperv_swiotlb_detect() is called in Hyper-V VM and other
iommu_table_entry callback will not be called.