Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1543463 > unrolled thread

[PATCH] ubifs: ensure zero err is returned on successful return

Started byColin King <colin.king@canonical.com>
First post2016-12-16 14:40 +0100
Last post2016-12-16 14:40 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] ubifs: ensure zero err is returned on successful return Colin King <colin.king@canonical.com> - 2016-12-16 14:40 +0100
    Re: [PATCH] ubifs: ensure zero err is returned on successful return Richard Weinberger <richard@nod.at> - 2016-12-16 14:40 +0100

#1543463 — [PATCH] ubifs: ensure zero err is returned on successful return

FromColin King <colin.king@canonical.com>
Date2016-12-16 14:40 +0100
Subject[PATCH] ubifs: ensure zero err is returned on successful return
Message-ID<sP0TU-4jY-5@gated-at.bofh.it>
From: Colin Ian King <colin.king@canonical.com>

err is no longer being set on a successful return path, causing
a garbage value being returned. Fix this by setting err to zero
for the successful return path.

Found with static analysis by CoverityScan, CID 1389473

Fixes: 7799953b34d18 ("ubifs: Implement encrypt/decrypt for all IO")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 fs/ubifs/journal.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/ubifs/journal.c b/fs/ubifs/journal.c
index a459211..b75f1a6 100644
--- a/fs/ubifs/journal.c
+++ b/fs/ubifs/journal.c
@@ -1319,6 +1319,7 @@ static int truncate_data_node(const struct ubifs_info *c, const struct inode *in
 	dn->compr_type = cpu_to_le16(compr_type);
 	dn->size = cpu_to_le32(*new_len);
 	*new_len = UBIFS_DATA_NODE_SZ + out_len;
+	err = 0;
 out:
 	kfree(buf);
 	return err;
-- 
2.10.2

[toc] | [next] | [standalone]


#1543468

FromRichard Weinberger <richard@nod.at>
Date2016-12-16 14:40 +0100
Message-ID<sP0TU-4jY-23@gated-at.bofh.it>
In reply to#1543463
On 16.12.2016 14:32, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
> 
> err is no longer being set on a successful return path, causing
> a garbage value being returned. Fix this by setting err to zero
> for the successful return path.
> 
> Found with static analysis by CoverityScan, CID 1389473
> 
> Fixes: 7799953b34d18 ("ubifs: Implement encrypt/decrypt for all IO")
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>  fs/ubifs/journal.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/fs/ubifs/journal.c b/fs/ubifs/journal.c
> index a459211..b75f1a6 100644
> --- a/fs/ubifs/journal.c
> +++ b/fs/ubifs/journal.c
> @@ -1319,6 +1319,7 @@ static int truncate_data_node(const struct ubifs_info *c, const struct inode *in
>  	dn->compr_type = cpu_to_le16(compr_type);
>  	dn->size = cpu_to_le32(*new_len);
>  	*new_len = UBIFS_DATA_NODE_SZ + out_len;
> +	err = 0;
>  out:
>  	kfree(buf);
>  	return err;
> 

Good catch!

Thanks,
//richard

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web