On 27/07/2024 00:59, Roman Kisel wrote: > @@ -2338,6 +2372,21 @@ static int vmbus_device_add(struct platform_device *pdev) > cur_res = &res->sibling; > } > > + /* > + * Hyper-V always assumes DMA cache coherency, and the DMA subsystem > + * might default to 'not coherent' on some architectures. > + * Avoid high-cost cache coherency maintenance done by the CPU. > + */ > +#if defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE) || \ > + defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU) || \ > + defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) > + > + if (!of_property_read_bool(np, "dma-coherent")) > + pr_warn("Assuming cache coherent DMA transactions, no 'dma-coherent' node supplied\n"); Why do you need this property at all, if it is allways dma-coherent? Are you supporting dma-noncoherent somewhere? Best regards, Krzysztof