All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anand Jain <anand.jain@oracle.com>
To: linux-btrfs@vger.kernel.org
Subject: Re: [PATCH 2/2] btrfs: fix vanished compression property after failed set
Date: Wed, 13 Mar 2019 18:33:50 +0800	[thread overview]
Message-ID: <60c3e0c1-52dd-5389-e244-c82776b214a1@oracle.com> (raw)
In-Reply-To: <1552455379-2311-2-git-send-email-anand.jain@oracle.com>




On 3/13/19 1:36 PM, Anand Jain wrote:
> The compression property resets to NULL, instead of the old value if we
> fail to set the new compression parameter.
> 
> btrfs prop get /btrfs compression
>    compression=lzo
> btrfs prop set /btrfs compression zli
>    ERROR: failed to set compression for /btrfs: Invalid argument
> btrfs prop get /btrfs compression
> 
> This is because the compression property ->validate() is successful for
> 'zli' as the strncmp() used the len passed from the userland.
> 
> Fix it by using the expected string length in strncmp().
> 
> Signed-off-by: Anand Jain <anand.jain@oracle.com>
> ---
>   fs/btrfs/props.c | 6 +++---
>   1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/fs/btrfs/props.c b/fs/btrfs/props.c
> index ef6502a94712..7aa362c2fbcf 100644
> --- a/fs/btrfs/props.c
> +++ b/fs/btrfs/props.c
> @@ -277,11 +277,11 @@ static int prop_compression_validate(struct inode *inode, const char *value,
>   	if (!value)
>   		return 0;
>   
> -	if (!strncmp("lzo", value, len))
> +	if (!strncmp("lzo", value, 3))
>   		return 0;
> -	else if (!strncmp("zlib", value, len))
> +	else if (!strncmp("zlib", value, 4))
>   		return 0;
> -	else if (!strncmp("zstd", value, len))
> +	else if (!strncmp("zstd", value, 4))
>   		return 0;
>


   Nack.
Now some junk value after expected string is not an error.
such as..

btrfs prop set /btrfs compression lzo110

Thanks, Anand

>   	return -EINVAL;
> 

  parent reply	other threads:[~2019-03-13 10:33 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-13  5:36 [PATCH 1/2] btrfs: fix zstd compression parameter Anand Jain
2019-03-13  5:36 ` [PATCH 2/2] btrfs: fix vanished compression property after failed set Anand Jain
2019-03-13  7:20   ` Nikolay Borisov
2019-03-13  7:22     ` Nikolay Borisov
2019-03-13  8:49       ` Anand Jain
2019-03-13 17:39         ` David Sterba
2019-03-13 10:33   ` Anand Jain [this message]
2019-03-13 10:49     ` Anand Jain
2019-03-13 17:42       ` David Sterba
2019-03-13 17:45     ` David Sterba
2019-03-14  1:40       ` Anand Jain
2019-03-13  7:19 ` [PATCH 1/2] btrfs: fix zstd compression parameter Nikolay Borisov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=60c3e0c1-52dd-5389-e244-c82776b214a1@oracle.com \
    --to=anand.jain@oracle.com \
    --cc=linux-btrfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.