RDMA/rds: Remove FMR support for memory registration
Use FRWR method for memory registration by default and remove the ancient and unsafe FMR method. Link: https://lore.kernel.org/r/3-v3-f58e6669d5d3+2cf-fmr_removal_jgg@mellanox.com Signed-off-by: Max Gurtovoy <maxg@mellanox.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:

committed by
Jason Gunthorpe

parent
f273ad4f8d
commit
07549ee21c
@@ -43,10 +43,6 @@
|
||||
#define RDS_MR_8K_SCALE (256 / (RDS_MR_8K_MSG_SIZE + 1))
|
||||
#define RDS_MR_8K_POOL_SIZE (RDS_MR_8K_SCALE * (8192 / 2))
|
||||
|
||||
struct rds_ib_fmr {
|
||||
struct ib_fmr *fmr;
|
||||
};
|
||||
|
||||
enum rds_ib_fr_state {
|
||||
FRMR_IS_FREE, /* mr invalidated & ready for use */
|
||||
FRMR_IS_INUSE, /* mr is in use or used & can be invalidated */
|
||||
@@ -84,7 +80,6 @@ struct rds_ib_mr {
|
||||
|
||||
u8 odp:1;
|
||||
union {
|
||||
struct rds_ib_fmr fmr;
|
||||
struct rds_ib_frmr frmr;
|
||||
struct ib_mr *mr;
|
||||
} u;
|
||||
@@ -109,8 +104,7 @@ struct rds_ib_mr_pool {
|
||||
unsigned long max_items;
|
||||
unsigned long max_items_soft;
|
||||
unsigned long max_free_pinned;
|
||||
struct ib_fmr_attr fmr_attr;
|
||||
bool use_fastreg;
|
||||
unsigned int max_pages;
|
||||
};
|
||||
|
||||
extern struct workqueue_struct *rds_ib_mr_wq;
|
||||
@@ -136,15 +130,9 @@ u32 rds_ib_get_lkey(void *trans_private);
|
||||
|
||||
void __rds_ib_teardown_mr(struct rds_ib_mr *);
|
||||
void rds_ib_teardown_mr(struct rds_ib_mr *);
|
||||
struct rds_ib_mr *rds_ib_alloc_fmr(struct rds_ib_device *, int);
|
||||
struct rds_ib_mr *rds_ib_reuse_mr(struct rds_ib_mr_pool *);
|
||||
int rds_ib_flush_mr_pool(struct rds_ib_mr_pool *, int, struct rds_ib_mr **);
|
||||
struct rds_ib_mr *rds_ib_reg_fmr(struct rds_ib_device *, struct scatterlist *,
|
||||
unsigned long, u32 *);
|
||||
struct rds_ib_mr *rds_ib_try_reuse_ibmr(struct rds_ib_mr_pool *);
|
||||
void rds_ib_unreg_fmr(struct list_head *, unsigned int *,
|
||||
unsigned long *, unsigned int);
|
||||
void rds_ib_free_fmr_list(struct rds_ib_mr *);
|
||||
struct rds_ib_mr *rds_ib_reg_frmr(struct rds_ib_device *rds_ibdev,
|
||||
struct rds_ib_connection *ic,
|
||||
struct scatterlist *sg,
|
||||
|
Reference in New Issue
Block a user