Motr  M0

#include <mem_xprt.h>

Collaboration diagram for m0_net_bulk_mem_ops:
Collaboration graph

Data Fields

m0_net_bulk_mem_work_fn_t bmo_work_fn [M0_NET_XOP_NR]
 
int(* bmo_ep_create )(struct m0_net_end_point **epp, struct m0_net_transfer_mc *tm, const struct sockaddr_in *sa, uint32_t id)
 
struct m0_net_bulk_mem_end_point *(* bmo_ep_alloc )(void)
 
void(* bmo_ep_free )(struct m0_net_bulk_mem_end_point *mep)
 
void(* bmo_ep_release )(struct m0_ref *ref)
 
void(* bmo_ep_get )(struct m0_net_end_point *ep)
 
void(* bmo_wi_add )(struct m0_net_bulk_mem_work_item *wi, struct m0_net_bulk_mem_tm_pvt *tp)
 
bool(* bmo_buffer_in_bounds )(const struct m0_net_buffer *nb)
 
int(* bmo_desc_create )(struct m0_net_buf_desc *desc, struct m0_net_transfer_mc *tm, enum m0_net_queue_type qt, m0_bcount_t buflen, int64_t buf_id)
 
void(* bmo_post_error )(struct m0_net_transfer_mc *tm, int status)
 
void(* bmo_wi_post_buffer_event )(struct m0_net_bulk_mem_work_item *wi)
 

Detailed Description

These subroutines are exposed by the transport as they may need to be intercepted by a derived transport.

Definition at line 279 of file mem_xprt.h.

Field Documentation

◆ bmo_buffer_in_bounds

bool(* bmo_buffer_in_bounds) (const struct m0_net_buffer *nb)

Subroutine to check if a buffer size is within bounds

Definition at line 311 of file mem_xprt.h.

◆ bmo_desc_create

int(* bmo_desc_create) (struct m0_net_buf_desc *desc, struct m0_net_transfer_mc *tm, enum m0_net_queue_type qt, m0_bcount_t buflen, int64_t buf_id)

Subroutine to create a buffer descriptor

Definition at line 314 of file mem_xprt.h.

◆ bmo_ep_alloc

struct m0_net_bulk_mem_end_point*(* bmo_ep_alloc) (void)

Subroutine to allocate memory for an end point

Definition at line 290 of file mem_xprt.h.

◆ bmo_ep_create

int(* bmo_ep_create) (struct m0_net_end_point **epp, struct m0_net_transfer_mc *tm, const struct sockaddr_in *sa, uint32_t id)

Subroutine to create an end point.

Definition at line 284 of file mem_xprt.h.

◆ bmo_ep_free

void(* bmo_ep_free) (struct m0_net_bulk_mem_end_point *mep)

Subroutine to free memory for an end point

Definition at line 293 of file mem_xprt.h.

◆ bmo_ep_get

void(* bmo_ep_get) (struct m0_net_end_point *ep)

Subroutine to obtain a persistent reference to an end point on the end point list. This is to aid derived transports that cache end points.

Definition at line 304 of file mem_xprt.h.

◆ bmo_ep_release

void(* bmo_ep_release) (struct m0_ref *ref)

Subroutine to release an end point. Used as the destructor function for m0_net_end_point::nep_ref.

Definition at line 298 of file mem_xprt.h.

◆ bmo_post_error

void(* bmo_post_error) (struct m0_net_transfer_mc *tm, int status)

Subroutine to post an error

Definition at line 321 of file mem_xprt.h.

◆ bmo_wi_add

void(* bmo_wi_add) (struct m0_net_bulk_mem_work_item *wi, struct m0_net_bulk_mem_tm_pvt *tp)

Subroutine to add a work item to the work list

Definition at line 307 of file mem_xprt.h.

◆ bmo_wi_post_buffer_event

void(* bmo_wi_post_buffer_event) (struct m0_net_bulk_mem_work_item *wi)

Subroutine to post a buffer event

Definition at line 325 of file mem_xprt.h.

◆ bmo_work_fn

Work functions.

Definition at line 281 of file mem_xprt.h.


The documentation for this struct was generated from the following file: