summaryrefslogtreecommitdiffstats
path: root/mm/swap.c
diff options
context:
space:
mode:
authorNick Piggin <npiggin@suse.de>2006-03-22 00:08:00 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-22 07:53:57 -0800
commit674539115cc88473f623581e1d53c0e2ecef2179 (patch)
tree7a32501091d7370ff4387df68804f918a089c631 /mm/swap.c
parent4c84cacfa424264f7ad5287298d3ea4a3e935278 (diff)
downloadlinux-stable-674539115cc88473f623581e1d53c0e2ecef2179.tar.gz
linux-stable-674539115cc88473f623581e1d53c0e2ecef2179.tar.bz2
linux-stable-674539115cc88473f623581e1d53c0e2ecef2179.zip
[PATCH] mm: less atomic ops
In the page release paths, we can be sure that nobody will mess with our page->flags because the refcount has dropped to 0. So no need for atomic operations here. Signed-off-by: Nick Piggin <npiggin@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/swap.c')
-rw-r--r--mm/swap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/mm/swap.c b/mm/swap.c
index cf88226cf96d..91b7e2026f69 100644
--- a/mm/swap.c
+++ b/mm/swap.c
@@ -215,7 +215,7 @@ void fastcall __page_cache_release(struct page *page)
spin_lock_irqsave(&zone->lru_lock, flags);
BUG_ON(!PageLRU(page));
- ClearPageLRU(page);
+ __ClearPageLRU(page);
del_page_from_lru(zone, page);
spin_unlock_irqrestore(&zone->lru_lock, flags);
}
@@ -266,7 +266,7 @@ void release_pages(struct page **pages, int nr, int cold)
spin_lock_irq(&zone->lru_lock);
}
BUG_ON(!PageLRU(page));
- ClearPageLRU(page);
+ __ClearPageLRU(page);
del_page_from_lru(zone, page);
}