Re: [PATCH 16/16] warn-on-kthread-name-truncation.diff

Andrew Morton
2007-04-02T06:01:22Z

On Sun, 1 Apr 2007 20:18:22 +0200 (MEST) Jan Engelhardt <jengelh@linux01.gwdg.de> wrote:

> Andrew Morton noted in http://lkml.org/lkml/2006/6/30/247
>
> """We do occasionally hit task_struct.comm[] truncation, when people
> use "too-long-a-name%d" for their kernel thread names."""
>
> This patch warns when such a truncation happens.
>
> Already posted on http://lkml.org/lkml/2006/7/3/93
>
> Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
> Cc: Andrew Morton <akpm@linux-foundation.org>
>
> kthread.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> Index: linux-2.6.21-rc5/kernel/kthread.c
> ===================================================================
> --- linux-2.6.21-rc5.orig/kernel/kthread.c
> +++ linux-2.6.21-rc5/kernel/kthread.c
> @@ -176,8 +176,11 @@ struct task_struct *kthread_create(int (
> if (!IS_ERR(create.result)) {
> va_list args;
> va_start(args, namefmt);
> - vsnprintf(create.result->comm, sizeof(create.result->comm),
> - namefmt, args);
> + if(vsnprintf(create.result->comm, sizeof(create.result->comm),
> + namefmt, args) != strlen(create.result->comm))
> + printk(KERN_WARNING "kthread_create: command name of "
> + "pid %d truncated to \"%s\"\n", create.result->pid,
> + create.result->comm);
> va_end(args);
> }

I'm not sure that it's a big enough problem to go adding code for, really.