linux/drivers/infiniband
Davidlohr Bueso 3a2a1e9056 drivers/IB,qib: optimize mmap_sem usage
The driver uses mmap_sem for both pinned_vm accounting and
get_user_pages(). Because rdma drivers might want to use gup_longterm() in
the future we still need some sort of mmap_sem serialization (as opposed
to removing it entirely by using gup_fast()). Now that pinned_vm is atomic
the writer lock can therefore be converted to reader.

This also fixes a bug that __qib_get_user_pages was not taking into
account the current value of pinned_vm.

Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2019-02-07 12:54:02 -07:00
..
core mm: make mm->pinned_vm an atomic64 counter 2019-02-07 12:54:02 -07:00
hw drivers/IB,qib: optimize mmap_sem usage 2019-02-07 12:54:02 -07:00
sw RDMA/rxe: Improve loopback marking 2019-02-04 15:57:49 -07:00
ulp Linux 5.0-rc5 2019-02-04 14:53:42 -07:00
Kconfig IB/{core,uverbs}: Move ib_umem_xxx functions from ib_core to ib_uverbs 2019-01-10 17:06:44 -07:00
Makefile IB/rdmavt: Create module framework and handle driver registration 2016-03-10 20:37:04 -05:00