Re: [PATCH -mm] constify sched.c stat_nam strings

From: Michael Tokarev
Date: Tue Jun 13 2006 - 17:21:25 EST


Andreas Mohr wrote:
> Hi all,
>
> Signed-off-by: Andreas Mohr <andi@xxxxxxxx>
>
>
> diff -urN linux-2.6.17-rc6-mm2.orig/kernel/sched.c linux-2.6.17-rc6-mm2.my/kernel/sched.c
> --- linux-2.6.17-rc6-mm2.orig/kernel/sched.c 2006-06-13 19:28:17.000000000 +0200
> +++ linux-2.6.17-rc6-mm2.my/kernel/sched.c 2006-06-13 19:32:03.000000000 +0200
> @@ -4662,7 +4662,7 @@
> task_t *relative;
> unsigned state;
> unsigned long free = 0;
> - static const char *stat_nam[] = { "R", "S", "D", "T", "t", "Z", "X" };
> + static const char * const stat_nam[] = { "R", "S", "D", "T", "t", "Z", "X" };
>
> printk("%-13.13s ", p->comm);
> state = p->state ? __ffs(p->state) + 1 : 0;

How about the following instead:

--- kernel/sched.c.orig 2006-05-31 22:23:53.000000000 +0400
+++ kernel/sched.c 2006-06-14 01:19:17.000000000 +0400
@@ -5287,14 +5287,11 @@ static void show_task(task_t *p)
task_t *relative;
unsigned state;
unsigned long free = 0;
- static const char *stat_nam[] = { "R", "S", "D", "T", "t", "Z", "X" };
+ static const char stat_nam[] = "RSDTtZX";

- printk("%-13.13s ", p->comm);
state = p->state ? __ffs(p->state) + 1 : 0;
- if (state < ARRAY_SIZE(stat_nam))
- printk(stat_nam[state]);
- else
- printk("?");
+ printk("%-13.13s %c", p->comm,
+ state < sizeof(stat_nam) - 1 ? stat_nam[state] : '?');
#if (BITS_PER_LONG == 32)
printk(" %08lX ", (unsigned long)p);
#else

?

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