From: Jason Gunthorpe <jgg@xxxxxxxxxxxx> This series removes the support for FMR mode to register memory. This ancient mode is unsafe (rkeys that are usually exposed for caching purposes and the API is limited to page granularity mappings) and not maintained/tested in the last few years. It also doesn't have any reasonable advantage over other memory registration methods such as FRWR (that is implemented in all the recent RDMA adapters). This series should be reviewed and approved by the maintainer of the effected drivers and I suggest to test it as well. Changes from V2: - Removed more occurances of _fmr - Remove max_map_per_fmr device attribute - Remove max_fmr device attribute - Remove additional dead code from bnxt_re and i40iw - Revised RDS to not use ib_fmr_attr or other fmr things - Rebased on RDMA for-next Changes from V1: https://lore.kernel.org/linux-rdma/20200527094634.24240-1-maxg@xxxxxxxxxxxx/ - added "RDMA/mlx5: Remove FMR leftovers" (from GalP) - rebased on top of "Linux 5.7-rc7" - added "Reviewed-by" Bart signature for SRP Cc: shlomin@xxxxxxxxxxxx Cc: vladimirk@xxxxxxxxxxxx Cc: oren@xxxxxxxxxxxx Gal Pressman (1): RDMA/mlx5: Remove FMR leftovers Israel Rukshin (1): RDMA/iser: Remove support for FMR memory registration Jason Gunthorpe (4): RDMA/bnxt_re: Remove FMR leftovers RDMA/i40iw: Remove FMR leftovers RDMA: Remove 'max_fmr' RDMA: Remove 'max_map_per_fmr' Max Gurtovoy (7): RDMA/srp: Remove support for FMR memory registration RDMA/rds: Remove FMR support for memory registration RDMA/core: Remove FMR pool API RDMA/mlx4: Remove FMR support for memory registration RDMA/mthca: Remove FMR support for memory registration RDMA/rdmavt: Remove FMR memory registration RDMA/core: Remove FMR device ops Documentation/driver-api/infiniband.rst | 3 - Documentation/infiniband/core_locking.rst | 2 - drivers/infiniband/core/Makefile | 2 +- drivers/infiniband/core/device.c | 4 - drivers/infiniband/core/fmr_pool.c | 494 ------------------- drivers/infiniband/core/uverbs_cmd.c | 2 - drivers/infiniband/core/verbs.c | 48 -- drivers/infiniband/hw/bnxt_re/ib_verbs.c | 3 - drivers/infiniband/hw/bnxt_re/ib_verbs.h | 6 - drivers/infiniband/hw/bnxt_re/qplib_sp.c | 3 - drivers/infiniband/hw/bnxt_re/qplib_sp.h | 2 - drivers/infiniband/hw/hfi1/verbs.c | 1 - drivers/infiniband/hw/i40iw/i40iw.h | 9 - drivers/infiniband/hw/i40iw/i40iw_verbs.c | 1 - drivers/infiniband/hw/i40iw/i40iw_verbs.h | 1 - drivers/infiniband/hw/mlx4/main.c | 11 - drivers/infiniband/hw/mlx4/mlx4_ib.h | 16 - drivers/infiniband/hw/mlx4/mr.c | 93 ---- drivers/infiniband/hw/mlx5/main.c | 1 - drivers/infiniband/hw/mlx5/mlx5_ib.h | 8 - drivers/infiniband/hw/mthca/mthca_dev.h | 10 - drivers/infiniband/hw/mthca/mthca_mr.c | 262 +--------- drivers/infiniband/hw/mthca/mthca_provider.c | 96 ---- drivers/infiniband/hw/mthca/mthca_provider.h | 23 - drivers/infiniband/hw/ocrdma/ocrdma.h | 1 - drivers/infiniband/hw/ocrdma/ocrdma_hw.c | 1 - drivers/infiniband/hw/ocrdma/ocrdma_verbs.c | 2 - drivers/infiniband/hw/qedr/main.c | 1 - drivers/infiniband/hw/qedr/qedr.h | 1 - drivers/infiniband/hw/qedr/verbs.c | 2 - drivers/infiniband/hw/qib/qib_verbs.c | 1 - drivers/infiniband/hw/usnic/usnic_ib_verbs.c | 1 - drivers/infiniband/sw/rdmavt/mr.c | 155 ------ drivers/infiniband/sw/rdmavt/mr.h | 15 - drivers/infiniband/sw/rdmavt/vt.c | 4 - drivers/infiniband/sw/siw/siw.h | 2 - drivers/infiniband/sw/siw/siw_main.c | 1 - drivers/infiniband/sw/siw/siw_verbs.c | 1 - drivers/infiniband/ulp/iser/iscsi_iser.h | 79 +-- drivers/infiniband/ulp/iser/iser_initiator.c | 19 +- drivers/infiniband/ulp/iser/iser_memory.c | 188 +------ drivers/infiniband/ulp/iser/iser_verbs.c | 126 +---- drivers/infiniband/ulp/srp/ib_srp.c | 222 +-------- drivers/infiniband/ulp/srp/ib_srp.h | 27 +- drivers/net/ethernet/mellanox/mlx4/main.c | 2 - drivers/net/ethernet/mellanox/mlx4/mr.c | 183 ------- drivers/net/ethernet/qlogic/qed/qed_rdma.c | 1 - drivers/net/ethernet/qlogic/qed/qed_rdma.h | 1 - include/linux/mlx4/device.h | 22 +- include/linux/qed/qed_rdma_if.h | 1 - include/rdma/ib_fmr_pool.h | 93 ---- include/rdma/ib_verbs.h | 61 --- net/rds/Makefile | 2 +- net/rds/ib.c | 22 +- net/rds/ib.h | 2 - net/rds/ib_cm.c | 4 +- net/rds/ib_fmr.c | 269 ---------- net/rds/ib_frmr.c | 4 +- net/rds/ib_mr.h | 14 +- net/rds/ib_rdma.c | 28 +- 60 files changed, 88 insertions(+), 2571 deletions(-) delete mode 100644 drivers/infiniband/core/fmr_pool.c delete mode 100644 include/rdma/ib_fmr_pool.h delete mode 100644 net/rds/ib_fmr.c -- 2.26.2