[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210430123807.GB1370958@nvidia.com>
Date: Fri, 30 Apr 2021 09:38:07 -0300
From: Jason Gunthorpe <jgg@...dia.com>
To: Lorenzo Pieralisi <lorenzo.pieralisi@....com>
Cc: Shanker Donthineni <sdonthineni@...dia.com>,
Marc Zyngier <maz@...nel.org>,
Alex Williamson <alex.williamson@...hat.com>,
Will Deacon <will@...nel.org>,
Catalin Marinas <catalin.marinas@....com>,
Christoffer Dall <christoffer.dall@....com>,
linux-arm-kernel@...ts.infradead.org, kvmarm@...ts.cs.columbia.edu,
linux-kernel@...r.kernel.org, kvm@...r.kernel.org,
Vikram Sethi <vsethi@...dia.com>,
Jason Sequeira <jsequeira@...dia.com>, benh@...nel.crashing.org
Subject: Re: [RFC 1/2] vfio/pci: keep the prefetchable attribute of a BAR
region in VMA
On Fri, Apr 30, 2021 at 10:54:17AM +0100, Lorenzo Pieralisi wrote:
> [+Jason, Ben]
>
> On Thu, Apr 29, 2021 at 11:29:05AM -0500, Shanker Donthineni wrote:
> > For pass-through device assignment, the ARM64 KVM hypervisor retrieves
> > the memory region properties physical address, size, and whether a
> > region backed with struct page or not from VMA. The prefetchable
> > attribute of a BAR region isn't visible to KVM to make an optimal
> > decision for stage2 attributes.
> >
> > This patch updates vma->vm_page_prot and maps with write-combine
> > attribute if the associated BAR is prefetchable. For ARM64
> > pgprot_writecombine() is mapped to memory-type MT_NORMAL_NC which
> > has no side effects on reads and multiple writes can be combined.
> >
> > Signed-off-by: Shanker Donthineni <sdonthineni@...dia.com>
> > drivers/vfio/pci/vfio_pci.c | 6 +++++-
> > 1 file changed, 5 insertions(+), 1 deletion(-)
>
> A bit of background information that may be useful:
>
> https://lore.kernel.org/linux-pci/2b539df4c9ec703458e46da2fc879ee3b310b31c.camel@kernel.crashing.org
This can't happen automatically.
writecombining or not is a uABI visible change. Userspace needs to
explicitly request and know that the mmap it gets back is
writecombining.
Jason
Powered by blists - more mailing lists