Re: [PATCH] kernel/irq/proc.c: set MAX_NAMELEN 11 instead of 10 whichexpress the maximize size of "%d" or "%u".

From: Chen Gang
Date: Sat Oct 05 2013 - 13:07:37 EST


On 10/06/2013 12:50 AM, Chen Gang wrote:
> On 10/06/2013 12:08 AM, Richard Weinberger wrote:
>> On Sat, Oct 5, 2013 at 5:46 PM, Chen Gang <gang.chen@xxxxxxxxxxx> wrote:
>>> On 10/05/2013 11:41 PM, Joe Perches wrote:
>>>> On Sat, 2013-10-05 at 23:19 +0800, Chen Gang wrote:
>>>>> Theoretically, the maximize size of "%d" or "%u" is 11 (10 + '\0'), so
>>>>> need set MAX_NAMELEN 11 instead of 10.
>>>>
>>>> %d can be negative.
>>>>
>>>>
>>>>
>>>>
>>>
>>> Oh, really, it is incorrect. Al Viro succeeds once. :-(
>>>
>>> And I should send patch v2 for it.
>>
>> irq is in both register_irq_proc() and unregister_irq_proc() an unsigned int.
>> Therefore %d makes not really sense. Both should use %u.
>> IMHO sprintf() should also get replaced by snprintf() but that's a
>> matter of taste.
>>

Oh, commonly, snprintf() are used for the string which can be truncated,
and can not be used for the string which contents must not be truncated.

In our case, the name string must be not truncated (or may not unique,
theoretically), so we have to still use sprintf().


Thanks.
>
> OK, thanks. your opinions sounds more reasonable to me.
>
> After 1 day (if no additional reply), I should send patch v2 for it.
>
>
> Thanks
>


--
Chen Gang
--
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/