Re: [PATCH v2] panic: setup panic_timeout early

From: Felipe Contreras
Date: Thu Nov 14 2013 - 06:16:15 EST


On Tue, Nov 12, 2013 at 6:03 PM, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
>
> * Felipe Contreras <felipe.contreras@xxxxxxxxx> wrote:
>
>> Otherwise we might not reboot when the user needs it the most (early
>> on).
>>
>> Signed-off-by: Felipe Contreras <felipe.contreras@xxxxxxxxx>
>> ---
>>
> [...]
>>
>> diff --git a/kernel/panic.c b/kernel/panic.c
>> index b6c482c..d865263 100644
>> --- a/kernel/panic.c
>> +++ b/kernel/panic.c
>> @@ -468,9 +468,23 @@ EXPORT_SYMBOL(__stack_chk_fail);
>>
>> #endif
>>
>> -core_param(panic, panic_timeout, int, 0644);
>> core_param(pause_on_oops, pause_on_oops, int, 0644);
>>
>> +static int __init set_panic_timeout(char *val)
>> +{
>> + long timeout;
>> + int ret;
>> +
>> + ret = kstrtol(val, 0, &timeout);
>> + if (ret < 0)
>> + return ret;
>> +
>> + panic_timeout = timeout;
>> + return 0;
>> +}
>
> I think the type of the 'timeout' local variable should match the type of
> 'panic_timeout' (which is 'int', not 'long').

So you would rather have this?

kstrtol(val, 0, (long *)&timeout);

Couldn't that potentially write the value beyond the memory allocated
to 'timeout'?

--
Felipe Contreras
--
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/