This patchset fixes a regression in 3.6 by reverting two dependent commits that made changes to zcache_do_preload(). The commits undermine an assumption made by tmem_put() in the cleancache path that preemption is disabled. This change introduces a race condition that can result in the wrong page being returned by tmem_get(), causing assorted errors (segfaults, apparent file corruption, etc) in userspace. The corruption was discussed in this thread: https://lkml.org/lkml/2012/8/17/494 Please apply this patchset to 3.6. This problem didn't exist in previous releases so nothing need be done for the stable trees. Seth Jennings (2): Revert "staging: zcache: cleanup zcache_do_preload and zcache_put_page" Revert "staging: zcache: optimize zcache_do_preload" drivers/staging/zcache/zcache-main.c | 54 +++++++++++++++++++--------------- 1 file changed, 31 insertions(+), 23 deletions(-) -- 1.7.9.5 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>