diff options
author | Alasdair Kergon <agk@redhat.com> | 2005-11-08 22:52:26 +0000 |
---|---|---|
committer | Alasdair Kergon <agk@redhat.com> | 2005-11-08 22:52:26 +0000 |
commit | 5f4b2acfe538ce25b248b215f9abddf35ab18e98 (patch) | |
tree | 3a6a0aed1dd973e022895fdef07a15467a6bdbcf /lib/zero | |
parent | 165e4a112b9b9af6321cd2781a4a31f909825581 (diff) | |
download | lvm2-5f4b2acfe538ce25b248b215f9abddf35ab18e98.tar.gz |
Replacement activation code. [Don't use this yet!]
Diffstat (limited to 'lib/zero')
-rw-r--r-- | lib/zero/zero.c | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/lib/zero/zero.c b/lib/zero/zero.c index f1439b607..6c3ccf064 100644 --- a/lib/zero/zero.c +++ b/lib/zero/zero.c @@ -38,18 +38,13 @@ static int _merge_segments(struct lv_segment *seg1, struct lv_segment *seg2) } #ifdef DEVMAPPER_SUPPORT -static int _compose_target_line(struct dev_manager *dm, struct dm_pool *mem, - struct config_tree *cft, void **target_state, - struct lv_segment *seg, char *params, - size_t paramsize, const char **target, int *pos, - uint32_t *pvmove_mirror_count) +static int _add_target_line(struct dev_manager *dm, struct dm_pool *mem, + struct config_tree *cft, void **target_state, + struct lv_segment *seg, + struct deptree_node *node, uint64_t len, + uint32_t *pvmove_mirror_count) { - /* zero */ - - *target = "zero"; - *params = '\0'; - - return 1; + return dm_deptree_node_add_zero_target(node, len); } static int _target_present(void) @@ -58,7 +53,7 @@ static int _target_present(void) static int present = 0; if (!checked) - present = target_present("zero"); + present = target_present("zero", 0); checked = 1; return present; @@ -74,7 +69,7 @@ static struct segtype_handler _zero_ops = { name:_name, merge_segments:_merge_segments, #ifdef DEVMAPPER_SUPPORT - compose_target_line:_compose_target_line, + add_target_line:_add_target_line, target_present:_target_present, #endif destroy:_destroy, @@ -93,7 +88,7 @@ struct segment_type *init_zero_segtype(struct cmd_context *cmd) segtype->ops = &_zero_ops; segtype->name = "zero"; segtype->private = NULL; - segtype->flags = SEG_CAN_SPLIT | SEG_VIRTUAL; + segtype->flags = SEG_CAN_SPLIT | SEG_VIRTUAL | SEG_CANNOT_BE_ZEROED; log_very_verbose("Initialised segtype: %s", segtype->name); |