Re: [RFCv2 08/16] KVM: Use GUP instead of copy_from/to_user() to access guest memory

From: Matthew Wilcox
Date: Mon Oct 26 2020 - 09:29:17 EST


On Sun, Oct 25, 2020 at 09:44:07PM -0700, John Hubbard wrote:
> On 10/25/20 9:21 PM, Matthew Wilcox wrote:
> > I don't think the page pinning approach is ever valid. For file
>
> Could you qualify that? Surely you don't mean that the entire pin_user_pages
> story is a waste of time--I would have expected you to make more noise
> earlier if you thought that, yes?

I do think page pinning is the wrong approach for everything. I did say
so at the time, and I continue to say so when the opportunity presents
itself. But shouting about it constantly only annoys people, so I don't
generally bother. I have other things to work on, and they're productive,
so I don't need to spend my time arguing.

> > It's been five years since DAX was merged, and page pinning still
> > doesn't work. How much longer before the people who are pushing it
> > realise that it's fundamentally flawed?
>
> Is this a separate rant about *only* DAX, or is general RDMA in your sights
> too? :)

This is a case where it's not RDMA's _fault_ that there's no good API
for it to do what it needs to do. There's a lot of work needed to wean
Linux device drivers off their assumption that there's a struct page
for every byte of memory.