On 07/11/17 19:42, Laurent Vivier wrote: > On 05/07/2016 07:31, David Gibson wrote: >> From: Alexey Kardashevskiy <a...@ozlabs.ru> >> >> This adds support for Dynamic DMA Windows (DDW) option defined by >> the SPAPR specification which allows to have additional DMA window(s) >> >> The "ddw" property is enabled by default on a PHB but for compatibility >> the pseries-2.6 machine and older disable it. >> This also creates a single DMA window for the older machines to >> maintain backward migration. >> >> This implements DDW for PHB with emulated and VFIO devices. The host >> kernel support is required. The advertised IOMMU page sizes are 4K and >> 64K; 16M pages are supported but not advertised by default, in order to >> enable them, the user has to specify "pgsz" property for PHB and >> enable huge pages for RAM. > > Why is it not advirtised by default?
I do not remember clearly but this kind of automation is usually less manageable. What if we do not want huge IOMMU pages for some reason? > When we start qemu with hugepage memory ("mount -t hugetlbfs none > /mnt/kvm_hugepage" and ".. -mem-path /mnt/kvm_hugepage .."), we have an > ugly message: > > "qemu-kvm: System page size 0x1000000 is not enabled in page_size_mask > (0x11000). Performance may be slow" > > I understand if we want to use this with VFIO, we need something like > "-global spapr-pci-host-bridge.pgsz=0x1011000". > > But is it needed if we don't use VFIO? Yes, TCE tables are still created in KVM so the size matters. > Is it a way QEMU adds automatically the 0x1000000 mask to page_size_mask? No. That thing which decides about -mem-path should also add the pgsz mask. -- Alexey