lkml.org 
[lkml]   [2005]   [Jun]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 2/2] kernel/power/disk.c string fix and if-less iterator
Hi!

> The attached patch:
>
> o Fixes kernel/power/disk.c string declared as 'char *p = "...";' to be
> declared as 'char p[] = "...";', as pointed by Jeff Garzik.

? Why was char *p ... wrong? Because you could not do sizeof() later?

> o Replaces:
> i++:
> if (i > 3) i = 0;
>
> By:
> i = (i + 1) % (sizeof(p) - 1);
>
> Which is if-less, and the adjust value is evaluated by the compiler in
> compile-time in case the string related to this loop is modified.

Well, why not...
Pavel

> Index: quilt/kernel/power/disk.c
> ===================================================================
> --- quilt.orig/kernel/power/disk.c
> +++ quilt/kernel/power/disk.c
> @@ -91,15 +91,13 @@ static void free_some_memory(void)
> unsigned int i = 0;
> unsigned int tmp;
> unsigned long pages = 0;
> - char *p = "-\\|/";
> + char p[] = "-\\|/";
>
> printk("Freeing memory... ");
> while ((tmp = shrink_all_memory(10000))) {
> pages += tmp;
> printk("\b%c", p[i]);
> - i++;
> - if (i > 3)
> - i = 0;
> + i = (i + 1) % (sizeof(p) - 1);
> }
> printk("\bdone (%li pages freed)\n", pages);
> }

--
teflon -- maybe it is a trademark, but it should not be.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-06-21 01:03    [W:1.938 / U:1.492 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site