25 #ifndef __MOTR_NET_KLNET_CORE_H__ 26 #define __MOTR_NET_KLNET_CORE_H__ 32 #include <linux/spinlock.h> 35 #if M0_LUSTRE_VERSION < 2110 36 #include <lustre_ver.h> 38 #include <lustre/lustre_ver.h> 39 #include <lustre/lustre_idl.h> 49 #if LUSTRE_VERSION_CODE > OBD_OCD_VERSION(2, 10, 51, 0) 50 typedef struct lnet_eq lnet_eq_t;
51 typedef struct lnet_event lnet_event_t;
52 typedef struct lnet_handle_eq lnet_handle_eq_t;
53 typedef struct lnet_handle_md lnet_handle_md_t;
54 typedef struct lnet_handle_me lnet_handle_me_t;
55 typedef struct lnet_libhandle lnet_libhandle_t;
56 typedef struct lnet_libmd lnet_libmd_t;
57 typedef struct lnet_md lnet_md_t;
58 typedef struct lnet_me lnet_me_t;
59 typedef struct lnet_msg lnet_msg_t;
60 typedef struct lnet_process_id lnet_process_id_t;
61 typedef enum lnet_event_kind lnet_event_kind_t;
75 #if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 2, 54, 0) 242 #if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 9, 54, 0) 243 #define LNetInvalidateMDHandle(h) LNetInvalidateHandle(h) 244 #define LNetMDHandleIsInvalid(h) LNetHandleIsInvalid(h) 246 #define LNetHandleIsEqual(h1, h2) ((h1).cookie == (h2).cookie) 247 #define LNetHandleIsInvalid(h) ((h).cookie == LNET_WIRE_HANDLE_COOKIE_NONE) 389 struct page* pg, uint32_t off);
404 #define NLX_PAGE_OFFSET(addr) ((addr) & ~PAGE_MASK) struct nlx_core_kmem_loc kd_cd_loc
unsigned kb_kiov_orig_len
int(* nlx_kcore_queue_op_t)(struct nlx_kcore_transfer_mc *ktm, struct nlx_core_buffer *cb, struct nlx_kcore_buffer *kb)
nlx_kcore_queue_op_t ko_buf_passive_recv
nlx_kcore_queue_op_t ko_buf_msg_send
static bool nlx_kcore_buffer_invariant(const struct nlx_kcore_buffer *kcb)
nlx_core_opaque_ptr_t kb_buffer_id
void(* ko_dom_fini)(struct nlx_kcore_domain *kd, struct nlx_core_domain *cd)
static int nlx_kcore_buffer_uva_to_kiov(struct nlx_kcore_buffer *kb, const struct m0_bufvec *bvec)
struct m0_tlink ktm_drv_linkage
int(* ko_buf_register)(struct nlx_kcore_domain *kd, nlx_core_opaque_ptr_t buffer_id, struct nlx_core_buffer *cb, struct nlx_kcore_buffer *kb)
void(* ko_tm_stop)(struct nlx_core_transfer_mc *ctm, struct nlx_kcore_transfer_mc *ktm)
uint64_t nlx_core_opaque_ptr_t
nlx_kcore_queue_op_t ko_buf_msg_recv
static int nlx_kcore_buffer_kla_to_kiov(struct nlx_kcore_buffer *kb, const struct m0_bufvec *bvec)
int(* ko_buf_event_wait)(struct nlx_core_transfer_mc *ctm, struct nlx_kcore_transfer_mc *ktm, m0_time_t timeout)
static bool nlx_kcore_tm_invariant(const struct nlx_kcore_transfer_mc *kctm)
int(* ko_tm_start)(struct nlx_kcore_domain *kd, struct nlx_core_transfer_mc *ctm, struct nlx_kcore_transfer_mc *ktm)
static bool nlx_kcore_domain_invariant(const struct nlx_kcore_domain *kd)
void(* ko_buf_deregister)(struct nlx_core_buffer *cb, struct nlx_kcore_buffer *kb)
nlx_kcore_queue_op_t ko_buf_passive_send
static struct m0_bufvec bvec
nlx_kcore_queue_op_t ko_buf_active_send
struct nlx_core_ep_addr ktm_addr
struct nlx_kcore_transfer_mc * kb_ktm
struct m0_mutex kd_drv_mutex
struct m0_tlink ktm_tm_linkage
struct nlx_kcore_ops * kd_drv_ops
int(* ko_buf_del)(struct nlx_kcore_transfer_mc *ktm, struct nlx_kcore_buffer *kb)
struct nlx_core_kmem_loc kb_cb_loc
static bool nlx_kcore_kiov_invariant(const lnet_kiov_t *k, size_t len)
static void nlx_core_kmem_loc_set(struct nlx_core_kmem_loc *loc, struct page *pg, uint32_t off)
static int nlx_kcore_kcore_dom_init(struct nlx_kcore_domain *kd)
static bool nlx_kcore_buffer_event_invariant(const struct nlx_kcore_buffer_event *kbe)
struct nlx_core_kmem_loc kbe_bev_loc
struct m0_tlink kbe_drv_linkage
enum m0_net_queue_type kb_qtype
struct m0_tl ktm_drv_bevs
int(* ko_dom_init)(struct nlx_kcore_domain *kd, struct nlx_core_domain *cd)
struct nlx_core_kmem_loc ktm_ctm_loc
static void nlx_kcore_kcore_dom_fini(struct nlx_kcore_domain *kd)
nlx_kcore_queue_op_t ko_buf_active_recv
struct m0_tlink kb_drv_linkage