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


Groups > linux.kernel > #1439597 > unrolled thread

[PATCH] mmc: block: fix free of uninitialized 'idata->buf'

Started byVille Viinikka <ville@tuxera.com>
First post2016-07-08 17:50 +0200
Last post2016-07-18 13:20 +0200
Articles 3 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] mmc: block: fix free of uninitialized 'idata->buf' Ville Viinikka <ville@tuxera.com> - 2016-07-08 17:50 +0200
    Re: [PATCH] mmc: block: fix free of uninitialized 'idata->buf' Ulf Hansson <ulf.hansson@linaro.org> - 2016-07-12 12:10 +0200
      Re: [PATCH] mmc: block: fix free of uninitialized 'idata->buf' Ulf Hansson <ulf.hansson@linaro.org> - 2016-07-18 13:20 +0200

#1439597 — [PATCH] mmc: block: fix free of uninitialized 'idata->buf'

FromVille Viinikka <ville@tuxera.com>
Date2016-07-08 17:50 +0200
Subject[PATCH] mmc: block: fix free of uninitialized 'idata->buf'
Message-ID<rSGcq-6ES-15@gated-at.bofh.it>
Set 'idata->buf' to NULL so that it never gets returned without
initialization. This fixes a bug where mmc_blk_ioctl_cmd() would
free both 'idata' and 'idata->buf' but 'idata->buf' was returned
uninitialized.

Fixes: 1ff8950c0433 ("mmc: block: change to use kmalloc when copy data from userspace")
Signed-off-by: Ville Viinikka <ville@tuxera.com>
---
 drivers/mmc/card/block.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c
index 747c4b0..334d637 100644
--- a/drivers/mmc/card/block.c
+++ b/drivers/mmc/card/block.c
@@ -355,8 +355,10 @@ static struct mmc_blk_ioc_data *mmc_blk_ioctl_copy_from_user(
 		goto idata_err;
 	}
 
-	if (!idata->buf_bytes)
+	if (!idata->buf_bytes) {
+		idata->buf = NULL;
 		return idata;
+	}
 
 	idata->buf = kmalloc(idata->buf_bytes, GFP_KERNEL);
 	if (!idata->buf) {
-- 
2.1.4

[toc] | [next] | [standalone]


#1441200

FromUlf Hansson <ulf.hansson@linaro.org>
Date2016-07-12 12:10 +0200
Message-ID<rU2NA-3tA-15@gated-at.bofh.it>
In reply to#1439597
+ stable

On 8 July 2016 at 17:27, Ville Viinikka <ville@tuxera.com> wrote:
> Set 'idata->buf' to NULL so that it never gets returned without
> initialization. This fixes a bug where mmc_blk_ioctl_cmd() would
> free both 'idata' and 'idata->buf' but 'idata->buf' was returned
> uninitialized.
>
> Fixes: 1ff8950c0433 ("mmc: block: change to use kmalloc when copy data from userspace")
> Signed-off-by: Ville Viinikka <ville@tuxera.com>

I added a stable tag to this and applied it for next!

Thanks and kind regards!
Uffe

> ---
>  drivers/mmc/card/block.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c
> index 747c4b0..334d637 100644
> --- a/drivers/mmc/card/block.c
> +++ b/drivers/mmc/card/block.c
> @@ -355,8 +355,10 @@ static struct mmc_blk_ioc_data *mmc_blk_ioctl_copy_from_user(
>                 goto idata_err;
>         }
>
> -       if (!idata->buf_bytes)
> +       if (!idata->buf_bytes) {
> +               idata->buf = NULL;
>                 return idata;
> +       }
>
>         idata->buf = kmalloc(idata->buf_bytes, GFP_KERNEL);
>         if (!idata->buf) {
> --
> 2.1.4
>

[toc] | [prev] | [next] | [standalone]


#1445384

FromUlf Hansson <ulf.hansson@linaro.org>
Date2016-07-18 13:20 +0200
Message-ID<rWeKB-5sp-15@gated-at.bofh.it>
In reply to#1441200
On 12 July 2016 at 12:07, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> + stable
>
> On 8 July 2016 at 17:27, Ville Viinikka <ville@tuxera.com> wrote:
>> Set 'idata->buf' to NULL so that it never gets returned without
>> initialization. This fixes a bug where mmc_blk_ioctl_cmd() would
>> free both 'idata' and 'idata->buf' but 'idata->buf' was returned
>> uninitialized.
>>
>> Fixes: 1ff8950c0433 ("mmc: block: change to use kmalloc when copy data from userspace")
>> Signed-off-by: Ville Viinikka <ville@tuxera.com>
>
> I added a stable tag to this and applied it for next!

Moved this to fixes!

Kind regards
Uffe

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web