From: Vidya Sagar > Sent: 09 November 2017 18:41 ... > > And this commit [3] sounds like it describes a similar hardware > > situation with Tegra where the host bridge intercepts the MSI target > > address, so writes to it never reach system memory. That means that > > Tegra doesn't need to allocate system memory at all. > > > > Is your system similar? Can you just statically allocate a little bus > > address space, use that for the MSI target address, and skip the > > __get_free_pages()? > > It is the same system where MSI memory writes don't really make it to > system memory. But, the addresses mentioned in that patch don't work. > we are working with hardware folks on understanding the issue better. ... You do need to make sure that the address you pick will never be used for a 'dma' transfer. If the address needs to be inside the (pcie) physical addresses for system memory then allocating a physical page may be the safest way to ensure this doesn't happen. David