#define M0_BUFVEC_INIT_BUF(addr_ptr, count_ptr)
void file_di_none_test(void)
uint64_t(* do_out_shift)(const struct m0_file *file)
void file_checksum_test(void)
M0_INTERNAL void m0_rm_domain_init(struct m0_rm_domain *dom)
void(* do_sum)(const struct m0_file *file, const struct m0_indexvec *io_info, const struct m0_bufvec *in, struct m0_bufvec *out)
struct m0_rm_domain res_dom
M0_INTERNAL bool m0_crc32_chk(const void *data, uint64_t len, const uint64_t *cksum)
M0_INTERNAL int m0_bufvec_alloc(struct m0_bufvec *bufvec, uint32_t num_segs, m0_bcount_t seg_size)
M0_INTERNAL void m0_bufvec_free(struct m0_bufvec *bufvec)
M0_INTERNAL void m0_fid_set(struct m0_fid *fid, uint64_t container, uint64_t key)
static void t10_ref_tag_compute(const struct m0_indexvec *io_info, struct di_info *di, struct m0_bufvec *di_vec)
M0_INTERNAL void m0_crc32(const void *data, uint64_t len, uint64_t *cksum)
void * m0_alloc(size_t size)
static void file_di_info_setup(const struct m0_file *file, const struct m0_indexvec *io_info, struct di_info *di)
m0_bcount_t counts[SEGS_NR]
m0_bindex_t offsets[SEGS_NR]
struct m0_indexvec io_vec
static bool t10_ref_tag_check(const struct m0_indexvec *io_info, struct di_info *di, const struct m0_bufvec *di_vec)
bool(* do_check)(const struct m0_file *file, const struct m0_indexvec *io_info, const struct m0_bufvec *in, const struct m0_bufvec *out)
static bool file_checksum_check(bool(*checksum)(const void *data, m0_bcount_t bsize, const uint64_t *csum), const struct m0_bufvec *in_vec, const struct m0_indexvec *io_info, struct di_info *di, const struct m0_bufvec *di_vec)
const struct m0_rm_resource_type_ops * rt_ops
M0_INTERNAL int m0_rm_type_register(struct m0_rm_domain *dom, struct m0_rm_resource_type *rt)
M0_INTERNAL void m0_file_fini(struct m0_file *file)
M0_INTERNAL void m0_rm_type_deregister(struct m0_rm_resource_type *rt)
static void file_checksum(void(*checksum)(const void *data, m0_bcount_t bsize, uint64_t *csum), const struct m0_bufvec *in_vec, const struct m0_indexvec *io_info, struct di_info *di, struct m0_bufvec *di_vec)
const struct m0_rm_resource_type_ops file_lock_type_ops
struct m0_rm_resource_type res_type
M0_INTERNAL void m0_rm_domain_fini(struct m0_rm_domain *dom)
const struct m0_di_ops * fi_di_ops
M0_INTERNAL void m0_file_init(struct m0_file *file, const struct m0_fid *fid, struct m0_rm_domain *dom, enum m0_di_types di_type)
void file_ref_tag_test(void)