diff options
author | Selvin Xavier <selvin.xavier@broadcom.com> | 2019-03-28 11:49:43 -0500 |
---|---|---|
committer | Jason Gunthorpe <jgg@mellanox.com> | 2019-03-28 14:13:27 -0300 |
commit | 5aa8484080115cff2da68080ad1d115613648504 (patch) | |
tree | dfd69350691e899b676149e8851b3fa197291b9c /drivers/char/raw.c | |
parent | IB/qib: Remove a set-but-not-used variable (diff) | |
download | linux-dev-5aa8484080115cff2da68080ad1d115613648504.tar.xz linux-dev-5aa8484080115cff2da68080ad1d115613648504.zip |
RDMA/bnxt_re: Use correct sizing on buffers holding page DMA addresses
umem->nmap is used while allocating internal buffer for storing
page DMA addresses. This causes out of bounds array access while iterating
the umem DMA-mapped SGL with umem page combining as umem->nmap can be
less than number of system pages in umem.
Use ib_umem_num_pages() instead of umem->nmap to size the page array.
Add a new structure (bnxt_qplib_sg_info) to pass sglist, npages and nmap.
Signed-off-by: Selvin Xavier <selvin.xavier@broadcom.com>
Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/char/raw.c')
0 files changed, 0 insertions, 0 deletions