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 <[email protected]>
---
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
On Fri, Aug 30, 2013 at 9:06 AM, Maxime Bizon <[email protected]> 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 <[email protected]>
Yes, excellent point. :)
Acked-by: Kees Cook <[email protected]>
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
>> 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 <[email protected]>
>
> Yes, excellent point. :)
>
> Acked-by: Kees Cook <[email protected]>
Applied. Thanks.
-Tony