Motr  M0
seg_internal.h
Go to the documentation of this file.
1 /* -*- C -*- */
2 /*
3  * Copyright (c) 2013-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 #ifndef __MOTR_BE_SEG_INTERNAL_H__
25 #define __MOTR_BE_SEG_INTERNAL_H__
26 
27 #include "be/alloc_internal.h" /* m0_be_allocator_header */
28 #include "be/alloc_internal_xc.h"
29 #include "be/list.h"
30 #include "be/seg.h"
31 #include "be/seg_xc.h"
32 #include "format/format.h" /* m0_format_header */
33 #include "format/format_xc.h"
34 
41 enum {
44 };
45 
47 struct m0_be_seg_hdr {
49  uint64_t bh_id;
50  uint32_t bh_items_nr;
52  char bh_be_version[
54  uint64_t bh_gen;
58 } M0_XCA_RECORD M0_XCA_DOMAIN(be);
59 
62 
63  /* future versions, uncomment and update M0_BE_SEG_HDR_FORMAT_VERSION */
64  /*M0_BE_SEG_HDR_FORMAT_VERSION_2,*/
65  /*M0_BE_SEG_HDR_FORMAT_VERSION_3,*/
66 
69 };
70 
72 #endif /* __MOTR_BE_SEG_INTERNAL_H__ */
73 
74 /*
75  * Local variables:
76  * c-indentation-style: "K&R"
77  * c-basic-offset: 8
78  * tab-width: 8
79  * fill-column: 80
80  * scroll-step: 1
81  * End:
82  */
83 /*
84  * vim: tabstop=8 shiftwidth=8 noexpandtab textwidth=80 nowrap
85  */
uint32_t bh_items_nr
Definition: seg_internal.h:50
Allocator header.
char bh_be_version[M0_BE_SEG_HDR_VERSION_LEN_MAX+1]
Definition: seg_internal.h:53
m0_be_seg_hdr_format_version
Definition: seg_internal.h:60
struct m0_format_footer bh_footer
Definition: seg_internal.h:55
uint64_t bh_gen
Definition: seg_internal.h:54
struct m0_be_allocator_header bh_alloc[M0_BAP_NR]
Definition: seg_internal.h:56
struct m0_be_list bh_dict
Definition: seg_internal.h:57
enum m0_be_seg_hdr_format_version M0_XCA_DOMAIN
uint64_t bh_id
Definition: seg_internal.h:49
struct m0_be_seg_geom bh_items[M0_BE_SEG_HDR_GEOM_ITMES_MAX]
Definition: seg_internal.h:51
struct m0_format_header bh_header
Definition: seg_internal.h:48
static struct m0_be_ut_backend be
Definition: service_ut.c:59