[patch 1/1] staging: zcache: fix cleancache crash

Greg KH gregkh at suse.de
Tue Sep 20 20:09:56 UTC 2011


From: Seth Jennings <sjenning at linux.vnet.ibm.com>

After commit, c5f5c4db, cleancache crashes on the first
successful get. This was caused by a remaining virt_to_page()
call in zcache_pampd_get_data_and_free() that only gets
run in the cleancache path.

The patch converts the virt_to_page() to struct page
casting like was done for other instances in c5f5c4db.


Signed-off-by: Seth Jennings <sjenning at linux.vnet.ibm.com>
Tested-By: Valdis Kletnieks <valdis.kletnieks at vt.edu>
Acked-by: Dan Magenheimer <dan.magenheimer at oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>

---
 drivers/staging/zcache/zcache-main.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/staging/zcache/zcache-main.c
+++ b/drivers/staging/zcache/zcache-main.c
@@ -1242,7 +1242,7 @@ static int zcache_pampd_get_data_and_fre
 	int ret = 0;
 
 	BUG_ON(!is_ephemeral(pool));
-	zbud_decompress(virt_to_page(data), pampd);
+	zbud_decompress((struct page *)(data), pampd);
 	zbud_free_and_delist((struct zbud_hdr *)pampd);
 	atomic_dec(&zcache_curr_eph_pampd_count);
 	return ret;




More information about the devel mailing list