android_kernel_google_msm/drivers/infiniband
Mike Marciniszyn 7a403328c3 IB/qib: Change lkey table allocation to support more MRs
commit d6f1c17e162b2a11e708f28fa93f2f79c164b442 upstream.

The lkey table is allocated with with a get_user_pages() with an
order based on a number of index bits from a module parameter.

The underlying kernel code cannot allocate that many contiguous pages.

There is no reason the underlying memory needs to be physically
contiguous.

This patch:
- switches the allocation/deallocation to vmalloc/vfree
- caps the number of bits to 23 to insure at least 1 generation bit
  o this matches the module parameter description

Reviewed-by: Vinit Agnihotri <vinit.abhay.agnihotri@intel.com>
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
[bwh: Backported to 3.2:
 - Adjust context
 - Add definition of qib_dev_warn(), added upstream by commit ddb8876589
   ("IB/qib: Convert opcode counters to per-context")]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Zefan Li <lizefan@huawei.com>
2015-10-22 09:20:08 +08:00
..
core RDMA/CMA: Canonize IPv4 on IPV6 sockets properly 2015-09-18 09:20:36 +08:00
hw IB/qib: Change lkey table allocation to support more MRs 2015-10-22 09:20:08 +08:00
ulp srp-target: Retry when QP creation fails with ENOMEM 2015-02-02 17:05:20 +08:00
Kconfig
Makefile