aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSagi Grimberg <sagig@mellanox.com>2015-10-13 12:11:49 -0400
committerDoug Ledford <dledford@redhat.com>2015-10-29 11:43:47 -0400
commit39bfc271bd687be2c8e396e976c0fb9a97963400 (patch)
treeede95a682667b7b1e5b118a018d1c86c518f0f27
parent5eae15927b3bccca6497506c8da38895da029b98 (diff)
IB/core: Remove old fast registration API
No callers and no providers left, go ahead and remove it. Signed-off-by: Sagi Grimberg <sagig@mellanox.com> Acked-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Doug Ledford <dledford@redhat.com>
-rw-r--r--drivers/infiniband/core/verbs.c25
-rw-r--r--include/rdma/ib_verbs.h54
2 files changed, 0 insertions, 79 deletions
diff --git a/drivers/infiniband/core/verbs.c b/drivers/infiniband/core/verbs.c
index 5673df061213..e2e53f9d7a22 100644
--- a/drivers/infiniband/core/verbs.c
+++ b/drivers/infiniband/core/verbs.c
@@ -1280,31 +1280,6 @@ struct ib_mr *ib_alloc_mr(struct ib_pd *pd,
1280} 1280}
1281EXPORT_SYMBOL(ib_alloc_mr); 1281EXPORT_SYMBOL(ib_alloc_mr);
1282 1282
1283struct ib_fast_reg_page_list *ib_alloc_fast_reg_page_list(struct ib_device *device,
1284 int max_page_list_len)
1285{
1286 struct ib_fast_reg_page_list *page_list;
1287
1288 if (!device->alloc_fast_reg_page_list)
1289 return ERR_PTR(-ENOSYS);
1290
1291 page_list = device->alloc_fast_reg_page_list(device, max_page_list_len);
1292
1293 if (!IS_ERR(page_list)) {
1294 page_list->device = device;
1295 page_list->max_page_list_len = max_page_list_len;
1296 }
1297
1298 return page_list;
1299}
1300EXPORT_SYMBOL(ib_alloc_fast_reg_page_list);
1301
1302void ib_free_fast_reg_page_list(struct ib_fast_reg_page_list *page_list)
1303{
1304 page_list->device->free_fast_reg_page_list(page_list);
1305}
1306EXPORT_SYMBOL(ib_free_fast_reg_page_list);
1307
1308/* Memory windows */ 1283/* Memory windows */
1309 1284
1310struct ib_mw *ib_alloc_mw(struct ib_pd *pd, enum ib_mw_type type) 1285struct ib_mw *ib_alloc_mw(struct ib_pd *pd, enum ib_mw_type type)
diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h
index 065d37c13aa6..324e9bf8e66c 100644
--- a/include/rdma/ib_verbs.h
+++ b/include/rdma/ib_verbs.h
@@ -737,7 +737,6 @@ enum ib_wc_opcode {
737 IB_WC_BIND_MW, 737 IB_WC_BIND_MW,
738 IB_WC_LSO, 738 IB_WC_LSO,
739 IB_WC_LOCAL_INV, 739 IB_WC_LOCAL_INV,
740 IB_WC_FAST_REG_MR,
741 IB_WC_REG_MR, 740 IB_WC_REG_MR,
742 IB_WC_MASKED_COMP_SWAP, 741 IB_WC_MASKED_COMP_SWAP,
743 IB_WC_MASKED_FETCH_ADD, 742 IB_WC_MASKED_FETCH_ADD,
@@ -1025,7 +1024,6 @@ enum ib_wr_opcode {
1025 IB_WR_SEND_WITH_INV, 1024 IB_WR_SEND_WITH_INV,
1026 IB_WR_RDMA_READ_WITH_INV, 1025 IB_WR_RDMA_READ_WITH_INV,
1027 IB_WR_LOCAL_INV, 1026 IB_WR_LOCAL_INV,
1028 IB_WR_FAST_REG_MR,
1029 IB_WR_REG_MR, 1027 IB_WR_REG_MR,
1030 IB_WR_MASKED_ATOMIC_CMP_AND_SWP, 1028 IB_WR_MASKED_ATOMIC_CMP_AND_SWP,
1031 IB_WR_MASKED_ATOMIC_FETCH_AND_ADD, 1029 IB_WR_MASKED_ATOMIC_FETCH_AND_ADD,
@@ -1064,12 +1062,6 @@ struct ib_sge {
1064 u32 lkey; 1062 u32 lkey;
1065}; 1063};
1066 1064
1067struct ib_fast_reg_page_list {
1068 struct ib_device *device;
1069 u64 *page_list;
1070 unsigned int max_page_list_len;
1071};
1072
1073/** 1065/**
1074 * struct ib_mw_bind_info - Parameters for a memory window bind operation. 1066 * struct ib_mw_bind_info - Parameters for a memory window bind operation.
1075 * @mr: A memory region to bind the memory window to. 1067 * @mr: A memory region to bind the memory window to.
@@ -1143,22 +1135,6 @@ static inline struct ib_ud_wr *ud_wr(struct ib_send_wr *wr)
1143 return container_of(wr, struct ib_ud_wr, wr); 1135 return container_of(wr, struct ib_ud_wr, wr);
1144} 1136}
1145 1137
1146struct ib_fast_reg_wr {
1147 struct ib_send_wr wr;
1148 u64 iova_start;
1149 struct ib_fast_reg_page_list *page_list;
1150 unsigned int page_shift;
1151 unsigned int page_list_len;
1152 u32 length;
1153 int access_flags;
1154 u32 rkey;
1155};
1156
1157static inline struct ib_fast_reg_wr *fast_reg_wr(struct ib_send_wr *wr)
1158{
1159 return container_of(wr, struct ib_fast_reg_wr, wr);
1160}
1161
1162struct ib_reg_wr { 1138struct ib_reg_wr {
1163 struct ib_send_wr wr; 1139 struct ib_send_wr wr;
1164 struct ib_mr *mr; 1140 struct ib_mr *mr;
@@ -1773,9 +1749,6 @@ struct ib_device {
1773 int (*map_mr_sg)(struct ib_mr *mr, 1749 int (*map_mr_sg)(struct ib_mr *mr,
1774 struct scatterlist *sg, 1750 struct scatterlist *sg,
1775 int sg_nents); 1751 int sg_nents);
1776 struct ib_fast_reg_page_list * (*alloc_fast_reg_page_list)(struct ib_device *device,
1777 int page_list_len);
1778 void (*free_fast_reg_page_list)(struct ib_fast_reg_page_list *page_list);
1779 int (*rereg_phys_mr)(struct ib_mr *mr, 1752 int (*rereg_phys_mr)(struct ib_mr *mr,
1780 int mr_rereg_mask, 1753 int mr_rereg_mask,
1781 struct ib_pd *pd, 1754 struct ib_pd *pd,
@@ -2885,33 +2858,6 @@ struct ib_mr *ib_alloc_mr(struct ib_pd *pd,
2885 u32 max_num_sg); 2858 u32 max_num_sg);
2886 2859
2887/** 2860/**
2888 * ib_alloc_fast_reg_page_list - Allocates a page list array
2889 * @device - ib device pointer.
2890 * @page_list_len - size of the page list array to be allocated.
2891 *
2892 * This allocates and returns a struct ib_fast_reg_page_list * and a
2893 * page_list array that is at least page_list_len in size. The actual
2894 * size is returned in max_page_list_len. The caller is responsible
2895 * for initializing the contents of the page_list array before posting
2896 * a send work request with the IB_WC_FAST_REG_MR opcode.
2897 *
2898 * The page_list array entries must be translated using one of the
2899 * ib_dma_*() functions just like the addresses passed to
2900 * ib_map_phys_fmr(). Once the ib_post_send() is issued, the struct
2901 * ib_fast_reg_page_list must not be modified by the caller until the
2902 * IB_WC_FAST_REG_MR work request completes.
2903 */
2904struct ib_fast_reg_page_list *ib_alloc_fast_reg_page_list(
2905 struct ib_device *device, int page_list_len);
2906
2907/**
2908 * ib_free_fast_reg_page_list - Deallocates a previously allocated
2909 * page list array.
2910 * @page_list - struct ib_fast_reg_page_list pointer to be deallocated.
2911 */
2912void ib_free_fast_reg_page_list(struct ib_fast_reg_page_list *page_list);
2913
2914/**
2915 * ib_update_fast_reg_key - updates the key portion of the fast_reg MR 2861 * ib_update_fast_reg_key - updates the key portion of the fast_reg MR
2916 * R_Key and L_Key. 2862 * R_Key and L_Key.
2917 * @mr - struct ib_mr pointer to be updated. 2863 * @mr - struct ib_mr pointer to be updated.