Re: [PATCH 0/4] per anon_vma lock and turn anon_vma rwsem lock to rwlock_t

Michel Lespinasse
2013-11-01T18:47:21Z

On Fri, Nov 1, 2013 at 11:09 AM, Linus Torvalds
<torvalds@linux-foundation.org> wrote:
> On Fri, Nov 1, 2013 at 10:49 AM, Davidlohr Bueso <davidlohr@hp.com> wrote:
>>
>> Andrea's last input from this kind of conversion is that it cannot be
>> done (at least yet): https://lkml.org/lkml/2013/9/30/53
>
> No, none of the invalidate_page users really need to sleep. If doing
> this makes some people not do stupid sh*t, then that's all good. So at
> least _that_ worry was a false alarm. We definitely don't want to
> support crap in the VM, and sleeping during teardown is crap.

Should copy Andrea on this. I talked with him during KS, and there are
no current in-tree users who are doing such sleeping; however there
are prospective users for networking (RDMA) or GPU stuff who want to
use this to let hardware directly copy data into user mappings. I'm
not too aware of the details, but my understanding is that we then
need to send the NIC and/or GPU some commands to tear down the
mapping, and that command is currently acknowledged with an interrupt,
which is where the lseepability requirement comes from. Andrea was
thinking about cooking up some scheme to dynamically change between
sleepable and non-sleepable locks at runtime depending on when such
drivers are used; this seems quite complicated to me but I haven't
heard of alternative plans for RDMA usage either.

--
Michel "Walken" Lespinasse
A program is never fully debugged until the last user dies.