Motr
M0
|
![]() |
Modules | |
LNet Transport Device Internals | |
Detailed functional specification of the internals of the LNet Transport Device. | |
Data Structures | |
struct | m0_lnet_dev_dom_init_params |
struct | m0_lnet_dev_buf_register_params |
struct | m0_lnet_dev_buf_deregister_params |
struct | m0_lnet_dev_buf_queue_params |
struct | m0_lnet_dev_buf_event_wait_params |
struct | m0_lnet_dev_nid_encdec_params |
struct | m0_lnet_dev_nidstrs_get_params |
struct | m0_lnet_dev_tm_start_params |
struct | m0_lnet_dev_tm_stop_params |
struct | m0_lnet_dev_bev_bless_params |
Macros | |
#define | WRITABLE_USER_PAGE_GET(uaddr, pg) get_user_pages((unsigned long) (uaddr), 1, FOLL_WRITE, &(pg), NULL) |
#define | WRITABLE_USER_PAGE_PUT(pg) |
#define | M0_LNET_DEV "m0lnet" |
#define | M0_LNET_IOC_MAGIC 'c' |
#define | M0_LNET_IOC_MIN_NR 0x21 |
#define | M0_LNET_IOC_MAX_NR 0x4f |
#define | M0_LNET_DOM_INIT _IOWR(M0_LNET_IOC_MAGIC, 0x21, struct m0_lnet_dev_dom_init_params) |
#define | M0_LNET_BUF_REGISTER _IOW(M0_LNET_IOC_MAGIC, 0x26, struct m0_lnet_dev_buf_register_params) |
#define | M0_LNET_BUF_DEREGISTER _IOW(M0_LNET_IOC_MAGIC, 0x27, struct m0_lnet_dev_buf_deregister_params) |
#define | M0_LNET_BUF_MSG_RECV _IOW(M0_LNET_IOC_MAGIC, 0x28, struct m0_lnet_dev_buf_queue_params) |
#define | M0_LNET_BUF_MSG_SEND _IOW(M0_LNET_IOC_MAGIC, 0x29, struct m0_lnet_dev_buf_queue_params) |
#define | M0_LNET_BUF_ACTIVE_RECV _IOW(M0_LNET_IOC_MAGIC, 0x2a, struct m0_lnet_dev_buf_queue_params) |
#define | M0_LNET_BUF_ACTIVE_SEND _IOW(M0_LNET_IOC_MAGIC, 0x2b, struct m0_lnet_dev_buf_queue_params) |
#define | M0_LNET_BUF_PASSIVE_RECV _IOW(M0_LNET_IOC_MAGIC, 0x2c, struct m0_lnet_dev_buf_queue_params) |
#define | M0_LNET_BUF_PASSIVE_SEND _IOW(M0_LNET_IOC_MAGIC, 0x2d, struct m0_lnet_dev_buf_queue_params) |
#define | M0_LNET_BUF_DEL _IOW(M0_LNET_IOC_MAGIC, 0x2e, struct m0_lnet_dev_buf_queue_params) |
#define | M0_LNET_BUF_EVENT_WAIT _IOW(M0_LNET_IOC_MAGIC, 0x2f, struct m0_lnet_dev_buf_event_wait_params) |
#define | M0_LNET_NIDSTR_DECODE _IOWR(M0_LNET_IOC_MAGIC, 0x30, struct m0_lnet_dev_nid_encdec_params) |
#define | M0_LNET_NIDSTR_ENCODE _IOWR(M0_LNET_IOC_MAGIC, 0x31, struct m0_lnet_dev_nid_encdec_params) |
#define | M0_LNET_NIDSTRS_GET _IOW(M0_LNET_IOC_MAGIC, 0x32, struct m0_lnet_dev_nidstrs_get_params) |
#define | M0_LNET_TM_START _IOW(M0_LNET_IOC_MAGIC, 0x33, struct m0_lnet_dev_tm_start_params) |
#define | M0_LNET_TM_STOP _IOW(M0_LNET_IOC_MAGIC, 0x34, struct m0_lnet_dev_tm_stop_params) |
#define | M0_LNET_BEV_BLESS _IOW(M0_LNET_IOC_MAGIC, 0x35, struct m0_lnet_dev_bev_bless_params) |
Functions | |
M0_INTERNAL int | nlx_dev_init (void) |
M0_INTERNAL void | nlx_dev_fini (void) |
The external interfaces of the LNet transport device are obtained by including the file net/lnet/linux_kernel/klnet_drv.h.
The device appears in file system as /dev/m0lnet.
#define M0_LNET_BEV_BLESS _IOW(M0_LNET_IOC_MAGIC, 0x35, struct m0_lnet_dev_bev_bless_params) |
Definition at line 206 of file lnet_ioctl.h.
#define M0_LNET_BUF_ACTIVE_RECV _IOW(M0_LNET_IOC_MAGIC, 0x2a, struct m0_lnet_dev_buf_queue_params) |
Definition at line 181 of file lnet_ioctl.h.
#define M0_LNET_BUF_ACTIVE_SEND _IOW(M0_LNET_IOC_MAGIC, 0x2b, struct m0_lnet_dev_buf_queue_params) |
Definition at line 183 of file lnet_ioctl.h.
#define M0_LNET_BUF_DEL _IOW(M0_LNET_IOC_MAGIC, 0x2e, struct m0_lnet_dev_buf_queue_params) |
Definition at line 189 of file lnet_ioctl.h.
#define M0_LNET_BUF_DEREGISTER _IOW(M0_LNET_IOC_MAGIC, 0x27, struct m0_lnet_dev_buf_deregister_params) |
Definition at line 175 of file lnet_ioctl.h.
#define M0_LNET_BUF_EVENT_WAIT _IOW(M0_LNET_IOC_MAGIC, 0x2f, struct m0_lnet_dev_buf_event_wait_params) |
Definition at line 191 of file lnet_ioctl.h.
#define M0_LNET_BUF_MSG_RECV _IOW(M0_LNET_IOC_MAGIC, 0x28, struct m0_lnet_dev_buf_queue_params) |
Definition at line 177 of file lnet_ioctl.h.
#define M0_LNET_BUF_MSG_SEND _IOW(M0_LNET_IOC_MAGIC, 0x29, struct m0_lnet_dev_buf_queue_params) |
Definition at line 179 of file lnet_ioctl.h.
#define M0_LNET_BUF_PASSIVE_RECV _IOW(M0_LNET_IOC_MAGIC, 0x2c, struct m0_lnet_dev_buf_queue_params) |
Definition at line 185 of file lnet_ioctl.h.
#define M0_LNET_BUF_PASSIVE_SEND _IOW(M0_LNET_IOC_MAGIC, 0x2d, struct m0_lnet_dev_buf_queue_params) |
Definition at line 187 of file lnet_ioctl.h.
#define M0_LNET_BUF_REGISTER _IOW(M0_LNET_IOC_MAGIC, 0x26, struct m0_lnet_dev_buf_register_params) |
Definition at line 173 of file lnet_ioctl.h.
#define M0_LNET_DEV "m0lnet" |
The name of the M0_LNET device.
Definition at line 164 of file lnet_ioctl.h.
#define M0_LNET_DOM_INIT _IOWR(M0_LNET_IOC_MAGIC, 0x21, struct m0_lnet_dev_dom_init_params) |
Definition at line 170 of file lnet_ioctl.h.
#define M0_LNET_IOC_MAGIC 'c' |
Definition at line 166 of file lnet_ioctl.h.
#define M0_LNET_IOC_MAX_NR 0x4f |
Definition at line 168 of file lnet_ioctl.h.
#define M0_LNET_IOC_MIN_NR 0x21 |
Definition at line 167 of file lnet_ioctl.h.
#define M0_LNET_NIDSTR_DECODE _IOWR(M0_LNET_IOC_MAGIC, 0x30, struct m0_lnet_dev_nid_encdec_params) |
Definition at line 194 of file lnet_ioctl.h.
#define M0_LNET_NIDSTR_ENCODE _IOWR(M0_LNET_IOC_MAGIC, 0x31, struct m0_lnet_dev_nid_encdec_params) |
Definition at line 196 of file lnet_ioctl.h.
#define M0_LNET_NIDSTRS_GET _IOW(M0_LNET_IOC_MAGIC, 0x32, struct m0_lnet_dev_nidstrs_get_params) |
Definition at line 198 of file lnet_ioctl.h.
#define M0_LNET_TM_START _IOW(M0_LNET_IOC_MAGIC, 0x33, struct m0_lnet_dev_tm_start_params) |
Definition at line 201 of file lnet_ioctl.h.
#define M0_LNET_TM_STOP _IOW(M0_LNET_IOC_MAGIC, 0x34, struct m0_lnet_dev_tm_stop_params) |
Definition at line 203 of file lnet_ioctl.h.
#define WRITABLE_USER_PAGE_GET | ( | uaddr, | |
pg | |||
) | get_user_pages((unsigned long) (uaddr), 1, FOLL_WRITE, &(pg), NULL) |
Definition at line 146 of file klnet_drv.h.
#define WRITABLE_USER_PAGE_PUT | ( | pg | ) |
Put a writable user page after calling SetPageDirty().
Definition at line 155 of file klnet_drv.h.
M0_INTERNAL void nlx_dev_fini | ( | void | ) |
Finalise the M0 LNet device.
Definition at line 1653 of file klnet_drv.c.
M0_INTERNAL int nlx_dev_init | ( | void | ) |
Initialise the M0 LNet Transport device. Registers the device as a miscellaneous character device.
Definition at line 1640 of file klnet_drv.c.