internal definitions for interface 'onesided'. More...


Go to the source code of this file.
Data Structures | |
| struct | nm_onesided_header_s |
| header used on the wire for onesided requests More... | |
| struct | nm_onesided_request_s |
| a send request for onesided More... | |
| struct | nm_onesided_target_request_s |
| a request used for target-side completions More... | |
| struct | nm_onesided_target_completion_s |
| status of a target-side completion More... | |
| struct | nm_onesided_s |
| an instance of interface 'onesided' More... | |
Macros | |
| #define | NM_ONESIDED_OP_PUT ((nm_onesided_flag_t)0x01) |
| #define | NM_ONESIDED_OP_GET ((nm_onesided_flag_t)0x02) |
| #define | NM_ONESIDED_OP_FENCE ((nm_onesided_flag_t)0x03) |
| #define | NM_ONESIDED_OP_QUEUE ((nm_onesided_flag_t)0x04) |
| #define | NM_ONESIDED_OP_MASK ((nm_onesided_flag_t)0x0F) |
| #define | NM_ONESIDED_FLAG_TARGET_COMPLETION ((nm_onesided_flag_t)0x10) |
| generate a completion on the target side | |
| #define | NM_ONESIDED_TARGET_COMPLETION_MAX 64 |
| maximum size for target-side completion data | |
Typedefs | |
| typedef uint32_t | nm_onesided_flag_t |
Functions | |
| struct nm_onesided_header_s | __attribute__ ((packed)) |
| PUK_ALLOCATOR_TYPE (nm_sr_req, nm_sr_request_t) | |
| PUK_ALLOCATOR_TYPE (nm_onesided_target_completion, struct nm_onesided_target_completion_s) | |
| PUK_DLFQ_TYPE (nm_onesided_queue_entry, void *, NULL) | |
| PUK_VECT_TYPE (nm_onesided_queue, struct nm_onesided_queue_entry_dlfq_s *) | |
Variables | |
| uintptr_t | addr |
| remote address (or queue id for enqueue) | |
| nm_len_t | size |
| size of the onsided data (not incuding target-side completion) | |
| nm_onesided_flag_t | flags |
| nm_seq_t | seq |
| seq number for target-side completion | |
| uint8_t | target_size |
| size of target-side completion data | |
| struct nm_onesided_request_s | __attribute__ |
Detailed Description
internal definitions for interface 'onesided'.
Not part of the public API. Included ion the interface header only for inlining purpose.
Definition in file nm_onesided_private.h.
Macro Definition Documentation
◆ NM_ONESIDED_FLAG_TARGET_COMPLETION
| #define NM_ONESIDED_FLAG_TARGET_COMPLETION ((nm_onesided_flag_t)0x10) |
generate a completion on the target side
Definition at line 37 of file nm_onesided_private.h.
◆ NM_ONESIDED_OP_FENCE
| #define NM_ONESIDED_OP_FENCE ((nm_onesided_flag_t)0x03) |
Definition at line 33 of file nm_onesided_private.h.
◆ NM_ONESIDED_OP_GET
| #define NM_ONESIDED_OP_GET ((nm_onesided_flag_t)0x02) |
Definition at line 32 of file nm_onesided_private.h.
◆ NM_ONESIDED_OP_MASK
| #define NM_ONESIDED_OP_MASK ((nm_onesided_flag_t)0x0F) |
Definition at line 35 of file nm_onesided_private.h.
◆ NM_ONESIDED_OP_PUT
| #define NM_ONESIDED_OP_PUT ((nm_onesided_flag_t)0x01) |
Definition at line 31 of file nm_onesided_private.h.
◆ NM_ONESIDED_OP_QUEUE
| #define NM_ONESIDED_OP_QUEUE ((nm_onesided_flag_t)0x04) |
Definition at line 34 of file nm_onesided_private.h.
◆ NM_ONESIDED_TARGET_COMPLETION_MAX
| #define NM_ONESIDED_TARGET_COMPLETION_MAX 64 |
maximum size for target-side completion data
Definition at line 71 of file nm_onesided_private.h.
Typedef Documentation
◆ nm_onesided_flag_t
| typedef uint32_t nm_onesided_flag_t |
Definition at line 29 of file nm_onesided_private.h.
Function Documentation
◆ __attribute__()
| struct nm_onesided_header_s __attribute__ | ( | (packed) | ) |
◆ PUK_ALLOCATOR_TYPE() [1/2]
| PUK_ALLOCATOR_TYPE | ( | nm_onesided_target_completion | , |
| struct nm_onesided_target_completion_s | |||
| ) |
◆ PUK_ALLOCATOR_TYPE() [2/2]
| PUK_ALLOCATOR_TYPE | ( | nm_sr_req | , |
| nm_sr_request_t | |||
| ) |
◆ PUK_DLFQ_TYPE()
| PUK_DLFQ_TYPE | ( | nm_onesided_queue_entry | , |
| void * | , | ||
| NULL | |||
| ) |
◆ PUK_VECT_TYPE()
| PUK_VECT_TYPE | ( | nm_onesided_queue | , |
| struct nm_onesided_queue_entry_dlfq_s * | |||
| ) |
Variable Documentation
◆ __attribute__
| struct nm_onesided_request_s __attribute__ |
◆ addr
| uintptr_t addr |
remote address (or queue id for enqueue)
Definition at line 0 of file nm_onesided_private.h.
◆ flags
| nm_onesided_flag_t flags |
Definition at line 2 of file nm_onesided_private.h.
Referenced by nm_header_init_data(), and nm_header_init_pkt_data().
◆ seq
| nm_seq_t seq |
seq number for target-side completion
Definition at line 3 of file nm_onesided_private.h.
◆ size
| nm_len_t size |
size of the onsided data (not incuding target-side completion)
- Examples
- nm_launcher_mini.c, nm_rpc_hello.c, and nm_sr_custom_data.c.
Definition at line 1 of file nm_onesided_private.h.
Referenced by allocate_buffer(), free_buffer(), nm_core_post_rtr(), nm_datav_size(), nm_examples_init_topo(), nm_madico_launcher_default_selector(), nm_sr_request_get_expected_size(), nm_sr_request_get_size(), nm_sync_clocks_bcast(), nm_sync_clocks_gather(), nm_sync_clocks_recv(), and nm_sync_clocks_send().
◆ target_size
| uint8_t target_size |
size of target-side completion data
Definition at line 4 of file nm_onesided_private.h.