|
@@ -557,20 +557,18 @@ __attribute_const__ int ib_rate_to_mult(enum ib_rate rate);
|
|
|
*/
|
|
|
__attribute_const__ int ib_rate_to_mbps(enum ib_rate rate);
|
|
|
|
|
|
-enum ib_mr_create_flags {
|
|
|
- IB_MR_SIGNATURE_EN = 1,
|
|
|
-};
|
|
|
|
|
|
/**
|
|
|
- * ib_mr_init_attr - Memory region init attributes passed to routine
|
|
|
- * ib_create_mr.
|
|
|
- * @max_reg_descriptors: max number of registration descriptors that
|
|
|
- * may be used with registration work requests.
|
|
|
- * @flags: MR creation flags bit mask.
|
|
|
+ * enum ib_mr_type - memory region type
|
|
|
+ * @IB_MR_TYPE_MEM_REG: memory region that is used for
|
|
|
+ * normal registration
|
|
|
+ * @IB_MR_TYPE_SIGNATURE: memory region that is used for
|
|
|
+ * signature operations (data-integrity
|
|
|
+ * capable regions)
|
|
|
*/
|
|
|
-struct ib_mr_init_attr {
|
|
|
- int max_reg_descriptors;
|
|
|
- u32 flags;
|
|
|
+enum ib_mr_type {
|
|
|
+ IB_MR_TYPE_MEM_REG,
|
|
|
+ IB_MR_TYPE_SIGNATURE,
|
|
|
};
|
|
|
|
|
|
/**
|
|
@@ -1671,8 +1669,9 @@ struct ib_device {
|
|
|
int (*query_mr)(struct ib_mr *mr,
|
|
|
struct ib_mr_attr *mr_attr);
|
|
|
int (*dereg_mr)(struct ib_mr *mr);
|
|
|
- struct ib_mr * (*create_mr)(struct ib_pd *pd,
|
|
|
- struct ib_mr_init_attr *mr_init_attr);
|
|
|
+ struct ib_mr * (*alloc_mr)(struct ib_pd *pd,
|
|
|
+ enum ib_mr_type mr_type,
|
|
|
+ u32 max_num_sg);
|
|
|
struct ib_mr * (*alloc_fast_reg_mr)(struct ib_pd *pd,
|
|
|
int max_page_list_len);
|
|
|
struct ib_fast_reg_page_list * (*alloc_fast_reg_page_list)(struct ib_device *device,
|
|
@@ -2817,15 +2816,9 @@ int ib_query_mr(struct ib_mr *mr, struct ib_mr_attr *mr_attr);
|
|
|
*/
|
|
|
int ib_dereg_mr(struct ib_mr *mr);
|
|
|
|
|
|
-
|
|
|
-/**
|
|
|
- * ib_create_mr - Allocates a memory region that may be used for
|
|
|
- * signature handover operations.
|
|
|
- * @pd: The protection domain associated with the region.
|
|
|
- * @mr_init_attr: memory region init attributes.
|
|
|
- */
|
|
|
-struct ib_mr *ib_create_mr(struct ib_pd *pd,
|
|
|
- struct ib_mr_init_attr *mr_init_attr);
|
|
|
+struct ib_mr *ib_alloc_mr(struct ib_pd *pd,
|
|
|
+ enum ib_mr_type mr_type,
|
|
|
+ u32 max_num_sg);
|
|
|
|
|
|
/**
|
|
|
* ib_alloc_fast_reg_mr - Allocates memory region usable with the
|