summaryrefslogtreecommitdiffstats
path: root/kernel/power/main.c
diff options
context:
space:
mode:
authorHugh Dickins <hugh.dickins@tiscali.co.uk>2009-12-14 17:59:21 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2009-12-15 08:53:19 -0800
commit08beca44dfb0ab008e365163df70dbd302ae1508 (patch)
tree33f3ddf5460e139bd7fd37e8c08026a7d852c3da /kernel/power/main.c
parent7b6ba2c7d3baf8cd9f888e05563dcc32e368baab (diff)
downloadblackbird-op-linux-08beca44dfb0ab008e365163df70dbd302ae1508.tar.gz
blackbird-op-linux-08beca44dfb0ab008e365163df70dbd302ae1508.zip
ksm: stable_node point to page and back
Add a pointer to the ksm page into struct stable_node, holding a reference to the page while the node exists. Put a pointer to the stable_node into the ksm page's ->mapping. Then we don't need get_ksm_page() while traversing the stable tree: the page to compare against is sure to be present and correct, even if it's no longer visible through any of its existing rmap_items. And we can handle the forked ksm page case more efficiently: no need to memcmp our way through the tree to find its match. Signed-off-by: Hugh Dickins <hugh.dickins@tiscali.co.uk> Cc: Izik Eidus <ieidus@redhat.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/power/main.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud