Re: [KJ PATCH] Replacing memset(<addr>,0,PAGE_SIZE) with clear_page() in kernel/kexec.c

From: Satyam Sharma
Date: Tue May 08 2007 - 13:14:02 EST


On 5/8/07, Pekka Enberg <penberg@xxxxxxxxxxxxxx> wrote:
Shani Moideen wrote:
> > ptr = kmap(page);
> > - memset(ptr, 0, PAGE_SIZE);
> > + clear_page(ptr);

On 5/8/07, Michael Tokarev <mjt@xxxxxxxxxx> wrote:
> I wonder if it's worth to invent kzmap() or something like that... ;)

I am counting 59 kmap + memset pairs in the kernel, so perhaps it is
worth it to reduce kernel text size.

Stuff of the sort already exists. Look for clear_highpage(),
clear_user_highpage() and memclear_highpage_flush (recently renamed to
zero_user_page, see -mm). But they all use kmap_atomic() -- kmap()
variants would have to be added. Also, they're all inlines, so I'm not
sure you'd be able to cut down text size, but still getting rid of
open-coding is always good.
-
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/