Motr  M0
lnet_ioctl.h
Go to the documentation of this file.
1 /* -*- C -*- */
2 /*
3  * Copyright (c) 2012-2020 Seagate Technology LLC and/or its Affiliates
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * For any questions about this software or licensing,
18  * please email opensource@seagate.com or cortx-questions@seagate.com.
19  *
20  */
21 
22 
23 #pragma once
24 
25 #ifndef __MOTR_LNET_IOCTL_H__
26 #define __MOTR_LNET_IOCTL_H__
27 
28 #include "lib/vec.h" /* m0_bufvec, standard types */
29 
48 };
49 
63 };
64 
71  void *dbd_kb;
72 };
73 
92  void *dbq_ktm;
94  void *dbq_kb;
95 };
96 
103  void *dbw_ktm;
109 };
110 
118  uint64_t dn_nid;
121 };
122 
131  char *dng_buf;
132 };
133 
141 };
142 
149  void *dts_ktm;
150 };
151 
158  void *dbb_ktm;
161 };
162 
164 #define M0_LNET_DEV "m0lnet"
165 
166 #define M0_LNET_IOC_MAGIC 'c'
167 #define M0_LNET_IOC_MIN_NR 0x21
168 #define M0_LNET_IOC_MAX_NR 0x4f
169 
170 #define M0_LNET_DOM_INIT \
171  _IOWR(M0_LNET_IOC_MAGIC, 0x21, struct m0_lnet_dev_dom_init_params)
172 
173 #define M0_LNET_BUF_REGISTER \
174  _IOW(M0_LNET_IOC_MAGIC, 0x26, struct m0_lnet_dev_buf_register_params)
175 #define M0_LNET_BUF_DEREGISTER \
176  _IOW(M0_LNET_IOC_MAGIC, 0x27, struct m0_lnet_dev_buf_deregister_params)
177 #define M0_LNET_BUF_MSG_RECV \
178  _IOW(M0_LNET_IOC_MAGIC, 0x28, struct m0_lnet_dev_buf_queue_params)
179 #define M0_LNET_BUF_MSG_SEND \
180  _IOW(M0_LNET_IOC_MAGIC, 0x29, struct m0_lnet_dev_buf_queue_params)
181 #define M0_LNET_BUF_ACTIVE_RECV \
182  _IOW(M0_LNET_IOC_MAGIC, 0x2a, struct m0_lnet_dev_buf_queue_params)
183 #define M0_LNET_BUF_ACTIVE_SEND \
184  _IOW(M0_LNET_IOC_MAGIC, 0x2b, struct m0_lnet_dev_buf_queue_params)
185 #define M0_LNET_BUF_PASSIVE_RECV \
186  _IOW(M0_LNET_IOC_MAGIC, 0x2c, struct m0_lnet_dev_buf_queue_params)
187 #define M0_LNET_BUF_PASSIVE_SEND \
188  _IOW(M0_LNET_IOC_MAGIC, 0x2d, struct m0_lnet_dev_buf_queue_params)
189 #define M0_LNET_BUF_DEL \
190  _IOW(M0_LNET_IOC_MAGIC, 0x2e, struct m0_lnet_dev_buf_queue_params)
191 #define M0_LNET_BUF_EVENT_WAIT \
192  _IOW(M0_LNET_IOC_MAGIC, 0x2f, struct m0_lnet_dev_buf_event_wait_params)
193 
194 #define M0_LNET_NIDSTR_DECODE \
195  _IOWR(M0_LNET_IOC_MAGIC, 0x30, struct m0_lnet_dev_nid_encdec_params)
196 #define M0_LNET_NIDSTR_ENCODE \
197  _IOWR(M0_LNET_IOC_MAGIC, 0x31, struct m0_lnet_dev_nid_encdec_params)
198 #define M0_LNET_NIDSTRS_GET \
199  _IOW(M0_LNET_IOC_MAGIC, 0x32, struct m0_lnet_dev_nidstrs_get_params)
200 
201 #define M0_LNET_TM_START \
202  _IOW(M0_LNET_IOC_MAGIC, 0x33, struct m0_lnet_dev_tm_start_params)
203 #define M0_LNET_TM_STOP \
204  _IOW(M0_LNET_IOC_MAGIC, 0x34, struct m0_lnet_dev_tm_stop_params)
205 
206 #define M0_LNET_BEV_BLESS \
207  _IOW(M0_LNET_IOC_MAGIC, 0x35, struct m0_lnet_dev_bev_bless_params)
208  /* LNetDev */
210 
211 #endif /* __MOTR_LNET_IOCTL_H__ */
212 
213 /*
214  * Local variables:
215  * c-indentation-style: "K&R"
216  * c-basic-offset: 8
217  * tab-width: 8
218  * fill-column: 80
219  * scroll-step: 1
220  * End:
221  */
m0_bcount_t ddi_max_buffer_size
Definition: lnet_ioctl.h:43
uint64_t m0_time_t
Definition: time.h:37
uint64_t m0_bcount_t
Definition: types.h:77
uint64_t nlx_core_opaque_ptr_t
char dn_buf[M0_NET_LNET_NIDSTR_SIZE]
Definition: lnet_ioctl.h:120
struct nlx_core_transfer_mc * dts_ctm
Definition: lnet_ioctl.h:140
struct nlx_core_buffer * dbr_lcbuf
Definition: lnet_ioctl.h:58
struct nlx_core_buffer_event * dbb_bev
Definition: lnet_ioctl.h:160
m0_bcount_t ddi_max_buffer_segment_size
Definition: lnet_ioctl.h:45
nlx_core_opaque_ptr_t dbr_buffer_id
Definition: lnet_ioctl.h:60
struct nlx_core_domain * ddi_cd
Definition: lnet_ioctl.h:41
Definition: vec.h:145