Re: [PATCH v3 0/1] mm: introduce put_user_page*(), placeholder versions

From: Jan Kara
Date: Thu Mar 14 2019 - 09:30:43 EST


On Thu 14-03-19 09:57:18, Jason Gunthorpe wrote:
> On Thu, Mar 14, 2019 at 10:03:45AM +0100, Jan Kara wrote:
> > On Wed 13-03-19 19:16:51, Christopher Lameter wrote:
> > > On Tue, 12 Mar 2019, Jerome Glisse wrote:
> > >
> > > > > > This has been discuss extensively already. GUP usage is now widespread in
> > > > > > multiple drivers, removing that would regress userspace ie break existing
> > > > > > application. We all know what the rules for that is.
> > >
> > > You are still misstating the issue. In RDMA land GUP is widely used for
> > > anonyous memory and memory based filesystems. *Not* for real filesystems.
> >
> > Maybe in your RDMA land. But there are apparently other users which do use
> > mmap of a file on normal filesystem (e.g. ext4) as a buffer for DMA
> > (Infiniband does not prohibit this if nothing else, video capture devices
> > also use very similar pattern of gup-ing pages and using them as video
> > buffers). And these users are reporting occasional kernel crashes. That's
> > how this whole effort started. Sadly the DMA to file mmap is working good
> > enough that people started using it so at this point we cannot just tell:
> > Sorry it was a mistake to allow this, just rewrite your applications.
>
> This is where we are in RDMA too.. People are trying it and the ones
> that do enough load testing find their kernel OOPs
>
> So it is not clear at all if this has graduated to a real use, or just
> an experiment. Perhaps there are some system configurations that don't
> trigger crashes..

Well I have some crash reports couple years old and they are not from QA
departments. So I'm pretty confident there are real users that use this in
production... and just reboot their machine in case it crashes.

Honza
--
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR