Motr
M0
drlink.h
Go to the documentation of this file.
1
/* -*- C -*- */
2
/*
3
* Copyright (c) 2021 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_DTM0_DRLINK_H__
26
#define __MOTR_DTM0_DRLINK_H__
27
28
/*
29
* DTM0 RPC Link is a lazy ("on-demand") RPC link.
30
*
31
* Whenever ::m0_dtm0_req_post is called, it launches a FOM that is trying
32
* to connect to the target process (if there is no connection) and then
33
* it sends the DTM0 message (for example, PERSISTENT).
34
*
35
*/
36
37
/* import */
38
#include "
lib/types.h
"
39
struct
dtm0_req_fop
;
40
struct
m0_dtm0_service
;
41
struct
m0_fid
;
42
struct
m0_fom
;
43
struct
m0_be_op
;
44
45
M0_INTERNAL
int
m0_dtm0_rpc_link_mod_init
(
void
);
46
M0_INTERNAL
void
m0_dtm0_rpc_link_mod_fini
(
void
);
47
63
M0_INTERNAL
int
m0_dtm0_req_post
(
struct
m0_dtm0_service
*
svc
,
64
struct
m0_be_op
*
op
,
65
const
struct
dtm0_req_fop
*
req
,
66
const
struct
m0_fid
*
tgt
,
67
const
struct
m0_fom
*parent_fom,
68
bool
wait_for_ack);
69
70
#endif
/* __MOTR_DTM0_DRLINK_H__ */
71
72
/*
73
* Local variables:
74
* c-indentation-style: "K&R"
75
* c-basic-offset: 8
76
* tab-width: 8
77
* fill-column: 80
78
* scroll-step: 1
79
* End:
80
*/
81
/*
82
* vim: tabstop=8 shiftwidth=8 noexpandtab textwidth=80 nowrap
83
*/
84
types.h
req
static struct io_request req
Definition:
file.c:100
m0_dtm0_rpc_link_mod_fini
M0_INTERNAL void m0_dtm0_rpc_link_mod_fini(void)
Definition:
drlink.c:87
m0_dtm0_rpc_link_mod_init
M0_INTERNAL int m0_dtm0_rpc_link_mod_init(void)
Definition:
drlink.c:77
m0_dtm0_req_post
M0_INTERNAL int m0_dtm0_req_post(struct m0_dtm0_service *svc, struct m0_be_op *op, const struct dtm0_req_fop *req, const struct m0_fid *tgt, const struct m0_fom *parent_fom, bool wait_for_ack)
Definition:
drlink.c:536
op
op
Definition:
libdemo.c:64
m0_fom
Definition:
fom.h:481
tgt
struct m0_pdclust_tgt_addr tgt
Definition:
fd.c:110
m0_fid
Definition:
fid.h:38
m0_dtm0_service
Definition:
service.h:44
svc
static struct m0_net_test_service svc
Definition:
service.c:34
dtm0_req_fop
Definition:
fop.h:54
m0_be_op
Definition:
op.h:74
dtm0
drlink.h
Generated on Thu Apr 14 2022 14:02:54 for Motr by
1.8.14