Motr
M0
|
#include <file_internal.h>
Data Fields | |
uint64_t | pi_magic |
uint64_t | pi_grpid |
enum pargrp_iomap_state | pi_state |
struct m0_indexvec_varr | pi_ivv |
enum pargrp_iomap_rmwtype | pi_rtype |
struct data_buf *** | pi_databufs |
struct data_buf *** | pi_paritybufs |
const struct pargrp_iomap_ops * | pi_ops |
struct io_request * | pi_ioreq |
struct m0_indexvec | pi_ivec |
uint32_t | pi_max_row |
uint32_t | pi_max_col |
struct m0_op_io * | pi_ioo |
bool | pi_trunc_partial |
bool | pi_is_corrupted |
Represents a map of io extents in a given parity group. Struct io_request contains as many pargrp_iomap structures as the number of parity groups spanned by io_request::ir_ivec. Typically, the segments from pargrp_iomap::pi_ivec are round_{up/down} to nearest page boundary for respective segments from io_requets::ir_ivec.
Represents a map of io extents in a given parity group. Struct m0_op_io contains as many pargrp_iomap structures as the number of parity groups spanned by m0_op_io::ioo_ext. Typically, the segments from pargrp_iomap::pi_ivec are round_{up/down} to nearest page boundary for respective segments from m0_op_io::ioo_ext.
Definition at line 1506 of file file_internal.h.
struct data_buf *** pi_databufs |
Data units in a parity group. Unit size should be multiple of PAGE_SIZE. This is basically a matrix with
Data units in a parity group. Unit size should be multiple of PAGE_SIZE. This is basically a matrix with
[0k ][16k ][32k ][48k ][64k ][80k ][96k ] [4k ][20k ][36k ][52k ][68k ][84k ][100k ] [8k ][24k ][40k ][56k ][72k ][88k ][104k ] [12k ][28k ][44k ][60k ][76k ][92k ][108k ]
Definition at line 1541 of file file_internal.h.
uint64_t pi_grpid |
Parity group id.
Definition at line 1511 of file file_internal.h.
struct io_request* pi_ioreq |
Backlink to io_request.
Definition at line 1557 of file file_internal.h.
bool pi_is_corrupted |
struct m0_indexvec pi_ivec |
Part of m0_op_io::ioo_ext which falls in ::pi_grpid parity group. All segments are in increasing order of file offset. Segment counts in this index vector are multiple of PAGE_SIZE.
struct m0_indexvec_varr pi_ivv |
Part of io_request::ir_ivec which falls in ::pi_grpid parity group. All segments are in increasing order of file offset. Segment counts in this index vector are multiple of PAGE_SIZE.
Definition at line 1522 of file file_internal.h.
uint64_t pi_magic |
Holds M0_T1FS_PGROUP_MAGIC.
Definition at line 1508 of file file_internal.h.
uint32_t pi_max_col |
uint32_t pi_max_row |
const struct pargrp_iomap_ops * pi_ops |
Operations vector.
Definition at line 1554 of file file_internal.h.
struct data_buf *** pi_paritybufs |
Parity units in a parity group. Unit size should be multiple of PAGE_SIZE. This is a matrix with
Parity units in a parity group. Unit size should be multiple of PAGE_SIZE. Similar to pi_databufs, this is a matrix with
Definition at line 1551 of file file_internal.h.
enum pargrp_iomap_rmwtype pi_rtype |
Type of read approach used only in case of rmw IO. Either read-old or read-rest.
Definition at line 1528 of file file_internal.h.
enum pargrp_iomap_state pi_state |
State of parity group during IO life-cycle.
Definition at line 1514 of file file_internal.h.
bool pi_trunc_partial |