summaryrefslogtreecommitdiff
path: root/lib/klist.c
diff options
context:
space:
mode:
authorNick Piggin <npiggin@suse.de>2006-03-22 00:08:08 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-22 07:53:58 -0800
commita482289d46587ffcda4c85aab109fb74910d7a48 (patch)
tree351dc5d9c09a4fe3d122c2157a298852ac8a821c /lib/klist.c
parent545b1ea9bfa5a8ca9af33d63144bd4f2faaea8dd (diff)
[PATCH] hugepage allocator cleanup
Insert "fresh" huge pages into the hugepage allocator by the same means as they are freed back into it. This reduces code size and allows enqueue_huge_page to be inlined into the hugepage free fastpath. Eliminate occurances of hugepages on the free list with non-zero refcount. This can allow stricter refcount checks in future. Also required for lockless pagecache. Signed-off-by: Nick Piggin <npiggin@suse.de> "This patch also eliminates a leak "cleaned up" by re-clobbering the refcount on every allocation from the hugepage freelists. With respect to the lockless pagecache, the crucial aspect is to eliminate unconditional set_page_count() to 0 on pages with potentially nonzero refcounts, though closer inspection suggests the assignments removed are entirely spurious." Acked-by: William Irwin <wli@holomorphy.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'lib/klist.c')
0 files changed, 0 insertions, 0 deletions