Avoid double memclear() in SLOB/SLUB

Previous thread: ibm_newemac: Update file headers copyright notices by Linux Kernel Mailing List on Friday, December 7, 2007 - 5:59 pm. (1 message)

Next thread: kbuild: fix building with redirected output. by Linux Kernel Mailing List on Monday, December 10, 2007 - 2:59 pm. (1 message)
To: <git-commits-head@...>
Date: Monday, December 10, 2007 - 2:59 pm

Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=c...
Commit: 7fd272550bd43cc1d7289ef0ab2fa50de137e767
Parent: 94545baded0bfbabdc30a3a4cb48b3db479dd6ef
Author: Linus Torvalds <torvalds@woody.linux-foundation.org>
AuthorDate: Sun Dec 9 10:14:36 2007 -0800
Committer: Linus Torvalds <torvalds@woody.linux-foundation.org>
CommitDate: Sun Dec 9 10:17:52 2007 -0800

Avoid double memclear() in SLOB/SLUB

Both slob and slub react to __GFP_ZERO by clearing the allocation, which
means that passing the GFP_ZERO bit down to the page allocator is just
wasteful and pointless.

Acked-by: Matt Mackall <mpm@selenic.com>
Reviewed-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
---
mm/slob.c | 2 +-
mm/slub.c | 3 +++
2 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/mm/slob.c b/mm/slob.c
index ee2ef8a..773a7aa 100644
--- a/mm/slob.c
+++ b/mm/slob.c
@@ -330,7 +330,7 @@ static void *slob_alloc(size_t size, gfp_t gfp, int align, int node)

/* Not enough space: must allocate a new page */
if (!b) {
- b = slob_new_page(gfp, 0, node);
+ b = slob_new_page(gfp & ~__GFP_ZERO, 0, node);
if (!b)
return 0;
sp = (struct slob_page *)virt_to_page(b);
diff --git a/mm/slub.c b/mm/slub.c
index b9f37cb..9c1d9f3 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -1468,6 +1468,9 @@ static void *__slab_alloc(struct kmem_cache *s,
void **object;
struct page *new;

+ /* We handle __GFP_ZERO in the caller */
+ gfpflags &= ~__GFP_ZERO;
+
if (!c->page)
goto new_slab;

-

Previous thread: ibm_newemac: Update file headers copyright notices by Linux Kernel Mailing List on Friday, December 7, 2007 - 5:59 pm. (1 message)

Next thread: kbuild: fix building with redirected output. by Linux Kernel Mailing List on Monday, December 10, 2007 - 2:59 pm. (1 message)