Re: [PATCH] pstore/ram: (really) fix undefined usage of rounddown_pow_of_two

From: Kees Cook
Date: Fri Aug 30 2013 - 14:15:56 EST


On Fri, Aug 30, 2013 at 9:06 AM, Maxime Bizon <mbizon@xxxxxxxxxx> wrote:
> Previous attempt to fix was b042e47491ba5f487601b5141a3f1d8582304170
>
> Suggested use of is_power_of_2() was bogus because is_power_of_2(0) is
> false (documented behaviour).
>
> Signed-off-by: Maxime Bizon <mbizon@xxxxxxxxxx>

Yes, excellent point. :)

Acked-by: Kees Cook <keescook@xxxxxxxxxxxx>

Thanks,

-Kees

> ---
> fs/pstore/ram.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/fs/pstore/ram.c b/fs/pstore/ram.c
> index a6119f9..03325bc 100644
> --- a/fs/pstore/ram.c
> +++ b/fs/pstore/ram.c
> @@ -400,11 +400,11 @@ static int ramoops_probe(struct platform_device *pdev)
> goto fail_out;
> }
>
> - if (!is_power_of_2(pdata->record_size))
> + if (pdata->record_size && !is_power_of_2(pdata->record_size))
> pdata->record_size = rounddown_pow_of_two(pdata->record_size);
> - if (!is_power_of_2(pdata->console_size))
> + if (pdata->console_size && !is_power_of_2(pdata->console_size))
> pdata->console_size = rounddown_pow_of_two(pdata->console_size);
> - if (!is_power_of_2(pdata->ftrace_size))
> + if (pdata->ftrace_size && !is_power_of_2(pdata->ftrace_size))
> pdata->ftrace_size = rounddown_pow_of_two(pdata->ftrace_size);
>
> cxt->dump_read_cnt = 0;
> --
> 1.7.9.5
>
>
> --
> Maxime
>
>



--
Kees Cook
Chrome OS Security
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/