aboutsummaryrefslogtreecommitdiffstats
diff options
-rw-r--r--series1
-rw-r--r--staging-zcache-fix-cleancache-crash.patch39
2 files changed, 40 insertions, 0 deletions
diff --git a/series b/series
index 3b55ce58139575..20f17f920e6bdc 100644
--- a/series
+++ b/series
@@ -54,5 +54,6 @@ platform-brightness-quirk-for-samsung-laptop-driver.patch
platform-samsung-laptop-dmi-info-for-nc210-nc110.patch
platform-fix-samsung-laptop-dmi-identification-for-n220-model.patch
staging-fix-comedi-build-when-isa_dma_api-is-enabled-but-comedi_pci-is-not-enabled.patch
+staging-zcache-fix-cleancache-crash.patch
usb-xhci-set-change-bit-when-warm-reset-change-is-set.patch
usb-xhci-prevent-infinite-loop-when-processing-mse-event.patch
diff --git a/staging-zcache-fix-cleancache-crash.patch b/staging-zcache-fix-cleancache-crash.patch
new file mode 100644
index 00000000000000..c1cbac50ebc682
--- /dev/null
+++ b/staging-zcache-fix-cleancache-crash.patch
@@ -0,0 +1,39 @@
+From devel-bounces@linuxdriverproject.org Tue Sep 20 13:05:10 2011
+From: Seth Jennings <sjenning@linux.vnet.ibm.com>
+To: gregkh@suse.de
+Subject: staging: zcache: fix cleancache crash
+Date: Tue, 13 Sep 2011 14:19:22 -0500
+Message-Id: <1315941562-25422-1-git-send-email-sjenning@linux.vnet.ibm.com>
+Cc: devel@driverdev.osuosl.org, Seth Jennings <sjenning@linux.vnet.ibm.com>, dan.magenheimer@oracle.com, francis.moro@gmail.com, ngupta@vflare.org
+
+From: Seth Jennings <sjenning@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@linux.vnet.ibm.com>
+Tested-By: Valdis Kletnieks <valdis.kletnieks@vt.edu>
+Acked-by: Dan Magenheimer <dan.magenheimer@oracle.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@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;