mirror of
https://github.com/torvalds/linux.git
synced 2024-11-14 16:12:02 +00:00
7610ab57de
The umem DMA list calculation was locked at 4k pages due to confusion around how this API works and is used when larger pages are present. The conclusion is: - umem's cannot extend past what is mapped into the process, so creating a lage page size and referring to a sub-range is not allowed - umem's must always have a page offset of zero, except for sub PAGE_SIZE umems - The feature of umem_offset to create multiple objects inside a umem is buggy and isn't used anyplace. Thus we can assume all users of the current API have umem_offset == 0 as well Provide a new page size calculator that limits the DMA list to the VA range and enforces umem_offset == 0. Allow user space to specify the page sizes which it can accept, this bitmap must be derived from the intended use of the umem, based on per-usage HW limitations. Link: https://lore.kernel.org/r/20210304130501.1102577-4-leon@kernel.org Signed-off-by: Yishai Hadas <yishaih@nvidia.com> Signed-off-by: Leon Romanovsky <leonro@nvidia.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> |
||
---|---|---|
.. | ||
hfi | ||
bnxt_re-abi.h | ||
cxgb4-abi.h | ||
efa-abi.h | ||
hns-abi.h | ||
i40iw-abi.h | ||
ib_user_ioctl_cmds.h | ||
ib_user_ioctl_verbs.h | ||
ib_user_mad.h | ||
ib_user_sa.h | ||
ib_user_verbs.h | ||
mlx4-abi.h | ||
mlx5_user_ioctl_cmds.h | ||
mlx5_user_ioctl_verbs.h | ||
mlx5-abi.h | ||
mthca-abi.h | ||
ocrdma-abi.h | ||
qedr-abi.h | ||
rdma_netlink.h | ||
rdma_user_cm.h | ||
rdma_user_ioctl_cmds.h | ||
rdma_user_ioctl.h | ||
rdma_user_rxe.h | ||
rvt-abi.h | ||
siw-abi.h | ||
vmw_pvrdma-abi.h |