Re: [PATCH 03/11] dynamic_debug: Remove uses of KERN_CONT indynamic_emit_prefix

From: Jason Baron
Date: Fri Jul 15 2011 - 11:07:46 EST


On Fri, Jul 15, 2011 at 12:04:22PM +0200, Bart Van Assche wrote:
> On Thu, Jul 14, 2011 at 6:09 PM, Jason Baron <jbaron@xxxxxxxxxx> wrote:
> > +       char tid[sizeof(int) + sizeof(int)/2 + 4];
> > +       char lineno[sizeof(int) + sizeof(int)/2];
>
> It's not clear to me where the array bounds come from ? Also, why
> sizeof(int) + sizeof(int)/2 instead of sizeof(int)*3 + 1 ?
>
> Bart.

hmmm...for the tid it bounded by PID_MAX_LIMIT, which is 4 million, so
you need 7 characters + 3 for the brackets and space = 10. So that looks
right to me. Although I'm not sure where the sizeof() comes from? Joe?

For the lineno, it is 24 bits, so it can be 2^24 = 16,777,216, or 8
characters, so I think the 6 is incorrect. Although, in practice I don't
think we have any files that are that big. Joe?

Thanks,

-Jason
--
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/