On Thu, Feb 29, 2024 at 10:36 PM Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote: > > On Thu, Feb 29, 2024 at 11:57:51AM +0900, David Stevens wrote: > > Our use case is virtio-gpu blob resources [1], which directly map host > > graphics buffers into the guest as "vram" for the virtio-gpu device. > > This feature currently does not work on systems using the amdgpu driver, > > as that driver allocates non-compound higher order pages via > > ttm_pool_alloc_page(). > > .. and just as last time around that is still the problem that needs > to be fixed instead of creating a monster like this to map > non-refcounted pages. > Patches to amdgpu to have been NAKed [1] with the justification that using non-refcounted pages is working as intended and KVM is in the wrong for wanting to take references to pages mapped with VM_PFNMAP [2]. The existence of the VM_PFNMAP implies that the existence of non-refcounted pages is working as designed. We can argue about whether or not VM_PFNMAP should exist, but until VM_PFNMAP is removed, KVM should be able to handle it. Also note that this is not adding a new source of non-refcounted pages, so it doesn't make removing non-refcounted pages more difficult, if the kernel does decide to go in that direction. -David [1] https://lore.kernel.org/lkml/8230a356-be38-f228-4a8e-95124e8e8db6@xxxxxxx/ [2] https://lore.kernel.org/lkml/594f1013-b925-3c75-be61-2d649f5ca54e@xxxxxxx/