33 #define M0_TRACE_SUBSYSTEM M0_TRACE_SUBSYS_BE 135 while (pdio !=
NULL) {
232 for (
i = 0;
i <
nr; ++
i)
245 #undef M0_TRACE_SUBSYSTEM
#define M0_ALLOC_ARR(arr, nr)
M0_INTERNAL int m0_be_pd_init(struct m0_be_pd *pd, struct m0_be_pd_cfg *pd_cfg)
M0_INTERNAL void m0_be_io_sync_enable(struct m0_be_io *bio)
void(* sa_cb)(struct m0_sm_group *grp, struct m0_sm_ast *)
static struct m0_sm_group * grp
#define M0_LOG(level,...)
M0_INTERNAL void m0_sm_ast_post(struct m0_sm_group *grp, struct m0_sm_ast *ast)
struct m0_be_io_sched bpd_sched
struct m0_be_pool bpd_io_pool
M0_INTERNAL void m0_be_pd_io_get(struct m0_be_pd *pd, struct m0_be_pd_io **pdio, struct m0_be_op *op)
uint32_t bpdc_seg_io_pending_max
M0_INTERNAL struct m0_be_io * m0_be_pd_io_be_io(struct m0_be_pd_io *pdio)
M0_INTERNAL void m0_be_op_callback_set(struct m0_be_op *op, m0_be_op_cb_t cb, void *param, enum m0_be_op_state state)
#define M0_EXT(start, end)
static void be_pd_sync_run(struct m0_sm_group *grp, struct m0_sm_ast *ast)
static struct m0_sm_ast ast[NR]
M0_INTERNAL void m0_be_io_configure(struct m0_be_io *bio, enum m0_stob_io_opcode opcode)
M0_INTERNAL void m0_be_io_err_send(uint32_t errcode, uint8_t location, uint8_t io_opcode)
struct m0_be_pd_io * bpd_io
M0_INTERNAL void m0_be_io_fini(struct m0_be_io *bio)
M0_INTERNAL void m0_be_pd_io_add(struct m0_be_pd *pd, struct m0_be_pd_io *pdio, struct m0_ext *ext, struct m0_be_op *op)
M0_INTERNAL int m0_be_io_sched_init(struct m0_be_io_sched *sched, struct m0_be_io_sched_cfg *cfg)
m0_time_t m0_time_now(void)
static void be_pd_io_op_done(struct m0_be_op *op, void *param)
M0_BE_POOL_DEFINE(pdio, static, struct m0_be_pd_io)
M0_INTERNAL int m0_be_io_init(struct m0_be_io *bio)
struct m0_be_io_sched_cfg bpdc_sched
M0_INTERNAL void m0_be_io_sched_lock(struct m0_be_io_sched *sched)
M0_INTERNAL void m0_be_io_sched_fini(struct m0_be_io_sched *sched)
M0_INTERNAL void m0_be_pd_sync(struct m0_be_pd *pd, m0_bindex_t pos, struct m0_stob **stobs, int nr, struct m0_be_op *op)
M0_INTERNAL void m0_be_op_done(struct m0_be_op *op)
#define M0_BE_IO_CREDIT(reg_nr, reg_size, part_nr)
#define M0_BE_OP_SYNC_RC(op_obj, action)
M0_INTERNAL void m0_be_pd_io_put(struct m0_be_pd *pd, struct m0_be_pd_io *pdio)
M0_INTERNAL void m0_be_op_reset(struct m0_be_op *op)
enum m0_be_pd_io_state bpi_state
bool bpd_sync_in_progress
M0_INTERNAL void m0_be_op_active(struct m0_be_op *op)
M0_INTERNAL void m0_be_io_sched_unlock(struct m0_be_io_sched *sched)
M0_INTERNAL void m0_be_pd_fini(struct m0_be_pd *pd)
M0_INTERNAL struct m0_locality * m0_locality0_get(void)
struct m0_be_io bpd_sync_io
struct m0_be_op * bpd_sync_op
M0_INTERNAL int m0_be_io_allocate(struct m0_be_io *bio, struct m0_be_io_credit *iocred)
M0_INTERNAL void m0_be_io_deallocate(struct m0_be_io *bio)
m0_time_t bpd_sync_runtime
M0_INTERNAL void m0_be_op_fini(struct m0_be_op *op)
struct m0_be_io_credit bpdc_io_credit
M0_INTERNAL void m0_be_op_set_add(struct m0_be_op *parent, struct m0_be_op *child)
M0_INTERNAL void m0_be_io_sched_add(struct m0_be_io_sched *sched, struct m0_be_io *io, struct m0_ext *ext, struct m0_be_op *op)
static void be_pd_io_move(struct m0_be_pd *pd, struct m0_be_pd_io *pdio, enum m0_be_pd_io_state state)
struct m0_be_pool_item bpi_pool_item
struct m0_be_pd_cfg bpd_cfg
struct m0_be_io bpi_be_io
M0_BE_POOL_DESCR_DEFINE(pdio, "pd_io pool", static, struct m0_be_pd_io, bpi_pool_item, bpi_pool_magic, M0_BE_PD_IO_MAGIC)
struct m0_sm_ast bpd_sync_ast
M0_INTERNAL void m0_be_op_init(struct m0_be_op *op)
M0_INTERNAL void m0_be_io_add(struct m0_be_io *bio, struct m0_stob *stob, void *ptr_user, m0_bindex_t offset_stob, m0_bcount_t size)
M0_INTERNAL void m0_be_io_launch(struct m0_be_io *bio, struct m0_be_op *op)
M0_INTERNAL void m0_be_io_reset(struct m0_be_io *bio)