22 #define M0_TRACE_SUBSYSTEM M0_TRACE_SUBSYS_POOL 69 .
ppt_name =
"pver_policy_first_available",
144 pvpt->ppt_code == code);
149 return pver_policy_types_tlist_length(&
pver_policies()->pp_types);
162 pver_policy_types_tlink_del_fini(
type);
170 if (policies ==
NULL)
174 pver_policy_types_tlist_init(&policies->
pp_types);
189 #undef M0_TRACE_SUBSYSTEM static const struct m0_pver_policy_ops first_available_pver_policy_ops
M0_INTERNAL int m0_pool_version_append(struct m0_pools_common *pc, struct m0_conf_pver *pver, struct m0_pool_version **pv)
static struct m0_pver_policy_type first_available_pver_policy_type
static int pver_first_available_get(struct m0_pools_common *pc, const struct m0_pool *pool, struct m0_pool_version **pver)
M0_INTERNAL int m0_pver_policy_types_nr(void)
struct m0_pool_version * pv
const struct m0_pver_policy_ops * pp_ops
M0_INTERNAL struct m0 * m0_get(void)
#define container_of(ptr, type, member)
M0_TL_DEFINE(pver_policy_types, static, struct m0_pver_policy_type)
static struct m0_pools_common pc
static int pver_first_available_init(struct m0_pver_policy *policy)
M0_INTERNAL int m0_conf_pver_get(struct m0_confc *confc, const struct m0_fid *pool, struct m0_conf_pver **out)
return M0_ERR(-EOPNOTSUPP)
static void pver_first_available_fini(struct m0_pver_policy *policy)
M0_INTERNAL struct m0_pver_policy_type * m0_pver_policy_type_find(enum m0_pver_policy_code code)
int(* ppto_create)(struct m0_pver_policy **out)
static const struct m0_pver_policy_type_ops first_vailable_pver_policy_type_ops
M0_INTERNAL int m0_pver_policy_type_register(struct m0_pver_policy_type *type)
struct m0_confc * pc_confc
static struct m0_pool pool
static struct m0_pver_policies * pver_policies(void)
int(* ppo_init)(struct m0_pver_policy *pver_policy)
#define M0_ALLOC_PTR(ptr)
void * i_moddata[M0_MODULE_NR]
M0_INTERNAL void m0_pver_policy_type_deregister(struct m0_pver_policy_type *type)
M0_INTERNAL void m0_confc_close(struct m0_conf_obj *obj)
struct m0_pver_policy fcp_policy
M0_INTERNAL struct m0_pool_version * m0_pool_clean_pver_find(const struct m0_pool *pool)
M0_TL_DESCR_DEFINE(pver_policy_types, "pver policy type list", static, struct m0_pver_policy_type, ppt_link, ppt_magic, M0_PVER_POLICY_MAGIC, M0_PVER_POLICY_HEAD_MAGIC)
#define m0_tl_find(name, var, head,...)
static int pver_first_available_create(struct m0_pver_policy **out)
M0_INTERNAL struct m0_pool_version * m0_pool_version_lookup(const struct m0_pools_common *pc, const struct m0_fid *id)
M0_INTERNAL void m0_pver_policies_fini(void)
M0_INTERNAL int m0_pver_policies_init(void)