Motr  M0
extmap_internal.h File Reference
#include "lib/buf.h"
#include "lib/buf_xc.h"
#include "lib/types.h"
#include "lib/types_xc.h"
#include "be/btree.h"
#include "be/btree_xc.h"
Include dependency graph for extmap_internal.h:

Go to the source code of this file.

Data Structures

struct  m0_be_emap_key
 
struct  m0_be_emap_rec
 
struct  m0_be_emap
 

Macros

#define __MOTR_BE_EXTMAP_INTERNAL_H__
 

Enumerations

enum  m0_be_emap_key_format_version { M0_BE_EMAP_KEY_FORMAT_VERSION_1 = 1, M0_BE_EMAP_KEY_FORMAT_VERSION = M0_BE_EMAP_KEY_FORMAT_VERSION_1 }
 
enum  m0_be_emap_rec_format_version { M0_BE_EMAP_REC_FORMAT_VERSION_1 = 1, M0_BE_EMAP_REC_FORMAT_VERSION = M0_BE_EMAP_REC_FORMAT_VERSION_1 }
 
enum  m0_be_emap_format_version { M0_BE_EMAP_FORMAT_VERSION_1 = 1, M0_BE_EMAP_FORMAT_VERSION = M0_BE_EMAP_FORMAT_VERSION_1 }
 

Functions

struct m0_be_emap_seg M0_XCA_DOMAIN (be)
 

Variables

struct m0_format_header ek_header
 
struct m0_uint128 ek_prefix
 
m0_bindex_t ek_offset
 
struct m0_format_footer ek_footer
 
enum m0_be_emap_rec_format_version M0_XCA_DOMAIN
 
struct m0_format_header er_header
 
m0_bindex_t er_start
 
uint64_t er_value
 
m0_bindex_t er_unit_size
 
uint32_t er_cksum_nob
 
struct m0_format_footer er_footer
 
struct m0_format_header em_header
 
struct m0_format_footer em_footer
 
struct m0_be_btree em_mapping
 
uint64_t em_version
 
struct m0_be_segem_seg
 
struct m0_be_rwlock em_lock
 
struct m0_buf em_key_buf
 
struct m0_buf em_val_buf
 
struct m0_be_emap_key em_key
 
struct m0_be_emap_rec em_rec
 

Macro Definition Documentation

◆ __MOTR_BE_EXTMAP_INTERNAL_H__

#define __MOTR_BE_EXTMAP_INTERNAL_H__

Definition at line 26 of file extmap_internal.h.

Variable Documentation

◆ ek_footer

struct m0_format_footer ek_footer

Definition at line 403 of file extmap_internal.h.

◆ ek_header

struct m0_format_header ek_header

Definition at line 387 of file extmap_internal.h.

◆ ek_offset

m0_bindex_t ek_offset

Last offset of the segment's extent. That is, the key of a segment ([A, B), V) has B as an offset.

This not entirely intuitive decision is forced by the available range search interfaces of m0_db_cursor: m0_db_cursor_get() positions the cursor on the least key not less than the key sought for.

Definition at line 402 of file extmap_internal.h.

◆ ek_prefix

struct m0_uint128 ek_prefix

Prefix of the map the segment is part of.

Definition at line 391 of file extmap_internal.h.

◆ em_footer

struct m0_format_footer em_footer

Definition at line 388 of file extmap_internal.h.

◆ em_header

struct m0_format_header em_header

Definition at line 387 of file extmap_internal.h.

◆ em_key

struct m0_be_emap_key em_key

Definition at line 403 of file extmap_internal.h.

◆ em_key_buf

struct m0_buf em_key_buf

Definition at line 401 of file extmap_internal.h.

◆ em_lock

struct m0_be_rwlock em_lock

Definition at line 400 of file extmap_internal.h.

◆ em_mapping

struct m0_be_btree em_mapping

Definition at line 393 of file extmap_internal.h.

◆ em_rec

struct m0_be_emap_rec em_rec

Definition at line 404 of file extmap_internal.h.

◆ em_seg

struct m0_be_seg* em_seg

The segment where we are stored.

Definition at line 399 of file extmap_internal.h.

◆ em_val_buf

struct m0_buf em_val_buf

Definition at line 402 of file extmap_internal.h.

◆ em_version

uint64_t em_version

Definition at line 397 of file extmap_internal.h.

◆ er_cksum_nob

uint32_t er_cksum_nob

checksum buffer size

Definition at line 405 of file extmap_internal.h.

◆ er_footer

struct m0_format_footer er_footer

Definition at line 406 of file extmap_internal.h.

◆ er_header

struct m0_format_header er_header

Definition at line 387 of file extmap_internal.h.

◆ er_start

m0_bindex_t er_start

Starting offset of the segment's extent.

Definition at line 391 of file extmap_internal.h.

◆ er_unit_size

m0_bindex_t er_unit_size

unit_size

Definition at line 397 of file extmap_internal.h.

◆ er_value

uint64_t er_value

Value associated with the segment.

Definition at line 395 of file extmap_internal.h.