linux/drivers/staging/zcache
Seth Jennings c5f5c4db39 staging: zcache: fix crash on high memory swap
zcache_put_page() was modified to pass page_address(page) instead of the
actual page structure. In combination with the function signature changes
to tmem_put() and zcache_pampd_create(), zcache_pampd_create() tries to
(re)derive the page structure from the virtual address.  However, if the
original page is a high memory page (or any unmapped page), this
virt_to_page() fails because the page_address() in zcache_put_page()
returned NULL.

This patch changes zcache_put_page() and zcache_get_page() to pass
the page structure instead of the page's virtual address, which
may or may not exist.

Signed-off-by: Seth Jennings <sjenning@linux.vnet.ibm.com>
Acked-by: Dan Magenheimer <dan.magenheimer@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-08-23 14:52:20 -07:00
..
Kconfig staging: zcache: misc build/config 2011-02-09 15:08:22 -08:00
Makefile staging: fix zcache building 2011-08-02 16:06:18 -07:00
tmem.c staging: zcache: support multiple clients, prep for KVM and RAMster 2011-07-08 14:18:53 -07:00
tmem.h staging: zcache: support multiple clients, prep for KVM and RAMster 2011-07-08 14:18:53 -07:00
zcache-main.c staging: zcache: fix crash on high memory swap 2011-08-23 14:52:20 -07:00