[PATCH] drm/ttm: set TTM allocated pages as reserved

Sean Christopherson seanjc at google.com
Wed Mar 29 17:22:22 UTC 2023


+David

On Wed, Mar 29, 2023, Paolo Bonzini wrote:
> On 3/29/23 18:43, Christian K�nig wrote:
> > > 
> > > 
> > > 3) other uses of kmap() must switch to MMU-notifier protection.
> > 
> > I would rather suggest to return the page additionally to the pfn from
> > hva_to_pfn() when the function was able to grab a reference to it.
> > 
> > When the page is then not available you can't call kmap() on that either.
> > 
> > > 
> > > If the DRM people are okay with SetPageReserved() as a temporary
> > > hack, we can change or remove the WARN in kvm_is_zone_device_page(),
> > > since that is what you are referring to in the commit message.
> > 
> > Adding Daniel for additional comments on this, but essentially we have
> > changed quite some infrastructure to make sure that everybody uses
> > VM_PFNMAP to prevent stuff like this from happening.
> > 
> > I would really prefer a proper solution in KVM instead.
> 
> Hmm... Now that I think about it that would be
> 
> https://lore.kernel.org/kvm/Yc4H+dGfK83BaGpC@google.com/t/
> 
> Time to resurrect that work.

Ya.  I had previously asked David to first eliminated the usage that isn't
protected by mmu_notifiers, but after seeing the resulting complexity, I had a
change of heart[2].  Can you weigh in on the latter thread, specifically my
proposal of using a module param to let the admin opt-in to "unsafe" kmap usage.

[1] https://lore.kernel.org/kvm/Ydhq5aHW+JFo15UF@google.com
[2] https://lore.kernel.org/all/ZBEEQtmtNPaEqU1i@google.com/


More information about the dri-devel mailing list