[dm-devel] [PATCH 3/3] dm: Add deleting check to target_message

malahal at us.ibm.com malahal at us.ibm.com
Fri Nov 13 18:32:43 UTC 2009


Mike Anderson [andmike at linux.vnet.ibm.com] wrote:
> Add dm_table_md_deleting check to target_message
> 
> Signed-off-by: Mike Anderson <andmike at linux.vnet.ibm.com>
> ---
>  drivers/md/dm-ioctl.c |    6 ++++++
>  1 files changed, 6 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/md/dm-ioctl.c b/drivers/md/dm-ioctl.c
> index a679429..04e252c 100644
> --- a/drivers/md/dm-ioctl.c
> +++ b/drivers/md/dm-ioctl.c
> @@ -1292,6 +1292,11 @@ static int target_message(struct dm_ioctl *param, size_t param_size)
>  	if (!table)
>  		goto out_argv;
> 
> +	if (dm_table_md_deleting(table)) {
> +		r = -ENXIO;
> +		goto out_table;
> +	}

Is there some reason that DELETING bit won't be set while executing the
rest of the following code. If not, what is the point of checking the
bit above?

> 
>  	ti = dm_table_find_target(table, tmsg->sector);
>  	if (!dm_target_is_valid(ti)) {
>  		DMWARN("Target message sector outside device.");
> @@ -1303,6 +1308,7 @@ static int target_message(struct dm_ioctl *param, size_t param_size)
>  		r = -EINVAL;
>  	}
> 
> + out_table:
>  	dm_table_put(table);
>   out_argv:
>  	kfree(argv);
> 
> --
> dm-devel mailing list
> dm-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/dm-devel




More information about the dm-devel mailing list