Lines Matching refs:pf

235 	struct pool_features pf;  member
1229 if (len < pool->sectors_per_block && pool->pf.zero_new_blocks) { in schedule_copy()
1268 if (pool->pf.zero_new_blocks) { in schedule_zero()
1425 return pool->pf.error_if_no_space ? -ENOSPC : 0; in should_error_unserviceable_bio()
2247 if (get_pool_mode(pool) == PM_OUT_OF_DATA_SPACE && !pool->pf.error_if_no_space) { in do_no_space_timeout()
2248 pool->pf.error_if_no_space = true; in do_no_space_timeout()
2319 return pool->pf.mode; in get_pool_mode()
2331 if (!pool->pf.error_if_no_space) in notify_of_pool_mode_change_to_oods()
2428 if (!pool->pf.error_if_no_space && no_space_timeout) in set_pool_mode()
2435 pool->pf.error_if_no_space = pt->requested_pf.error_if_no_space; in set_pool_mode()
2445 pool->pf.mode = new_mode; in set_pool_mode()
2715 pool->pf = pt->adjusted_pf; in bind_control_target()
2733 static void pool_features_init(struct pool_features *pf) in pool_features_init() argument
2735 pf->mode = PM_WRITE; in pool_features_init()
2736 pf->zero_new_blocks = true; in pool_features_init()
2737 pf->discard_enabled = true; in pool_features_init()
2738 pf->discard_passdown = true; in pool_features_init()
2739 pf->error_if_no_space = false; in pool_features_init()
2797 pool_features_init(&pool->pf); in pool_create()
2959 static int parse_pool_features(struct dm_arg_set *as, struct pool_features *pf, in parse_pool_features() argument
2985 pf->zero_new_blocks = false; in parse_pool_features()
2988 pf->discard_enabled = false; in parse_pool_features()
2991 pf->discard_passdown = false; in parse_pool_features()
2994 pf->mode = PM_READ_ONLY; in parse_pool_features()
2997 pf->error_if_no_space = true; in parse_pool_features()
3088 struct pool_features pf; in pool_ctr() local
3113 pool_features_init(&pf); in pool_ctr()
3116 r = parse_pool_features(&as, &pf, ti); in pool_ctr()
3120 metadata_mode = FMODE_READ | ((pf.mode == PM_READ_ONLY) ? 0 : FMODE_WRITE); in pool_ctr()
3156 block_size, pf.mode == PM_READ_ONLY, &ti->error, &pool_created); in pool_ctr()
3168 if (!pool_created && pf.discard_enabled != pool->pf.discard_enabled) { in pool_ctr()
3179 pt->adjusted_pf = pt->requested_pf = pf; in pool_ctr()
3188 if (pf.discard_enabled && pf.discard_passdown) { in pool_ctr()
3665 static void emit_flags(struct pool_features *pf, char *result, in emit_flags() argument
3668 unsigned count = !pf->zero_new_blocks + !pf->discard_enabled + in emit_flags()
3669 !pf->discard_passdown + (pf->mode == PM_READ_ONLY) + in emit_flags()
3670 pf->error_if_no_space; in emit_flags()
3673 if (!pf->zero_new_blocks) in emit_flags()
3676 if (!pf->discard_enabled) in emit_flags()
3679 if (!pf->discard_passdown) in emit_flags()
3682 if (pf->mode == PM_READ_ONLY) in emit_flags()
3685 if (pf->error_if_no_space) in emit_flags()
3776 if (pool->pf.mode == PM_OUT_OF_DATA_SPACE) in pool_status()
3778 else if (pool->pf.mode == PM_READ_ONLY) in pool_status()
3783 if (!pool->pf.discard_enabled) in pool_status()
3785 else if (pool->pf.discard_passdown) in pool_status()
3790 if (pool->pf.error_if_no_space) in pool_status()
4044 if (tc->pool->pf.discard_enabled) { in thin_ctr()
4254 if (!pool->pf.discard_enabled) in thin_io_hints()