staging: fix powerpc linux-next break on zsmalloc
authorSeth Jennings <sjenning@linux.vnet.ibm.com>
Mon, 13 Feb 2012 14:47:49 +0000 (08:47 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Feb 2012 14:57:17 +0000 (06:57 -0800)
linux/vmalloc.h added to zsmalloc-main.c to resolve implicit
declaration errors.

X86 dependency added to zsmalloc and dependent drivers zcache and zram.

This X86 only requirement is not ideal.  Working to find portable
functions for __flush_tlb_one and set_pte.

Signed-off-by: Seth Jennings <sjenning@linux.vnet.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/zcache/Kconfig
drivers/staging/zram/Kconfig
drivers/staging/zsmalloc/Kconfig
drivers/staging/zsmalloc/zsmalloc-main.c

index 94e48aa9f36b9dacd3514f2cbb569fc494cb0f04..5a36fcfd87c00e08c0454e73262be882022d3146 100644 (file)
@@ -1,6 +1,8 @@
 config ZCACHE
        tristate "Dynamic compression of swap pages and clean pagecache pages"
-       depends on (CLEANCACHE || FRONTSWAP) && CRYPTO
+       # X86 dependency is because zsmalloc uses non-portable pte/tlb
+       # functions
+       depends on (CLEANCACHE || FRONTSWAP) && CRYPTO && X86
        select ZSMALLOC
        select CRYPTO_LZO
        default n
index ee23a86ea7d5eec82644b4964dd3390a500d5abd..9d11a4cb99b74198fb129a82bcacf55036b66dd0 100644 (file)
@@ -1,6 +1,8 @@
 config ZRAM
        tristate "Compressed RAM block device support"
-       depends on BLOCK && SYSFS
+       # X86 dependency is because zsmalloc uses non-portable pte/tlb
+       # functions
+       depends on BLOCK && SYSFS && X86
        select ZSMALLOC
        select LZO_COMPRESS
        select LZO_DECOMPRESS
index 3e7a8d4d217265564ba99b9faaaf059780b7d843..8e2c6a05a178fcf8c1f1f3f7db2cf78aa87b03ff 100644 (file)
@@ -1,6 +1,9 @@
 config ZSMALLOC
        tristate "Memory allocator for compressed pages"
-       depends on SPARSEMEM
+       # X86 dependency is because of the use of __flush_tlb_one and set_pte
+       # in zsmalloc-main.c.
+       # TODO: convert these to portable functions
+       depends on SPARSEMEM && X86
        default n
        help
          zsmalloc is a slab-based memory allocator designed to store
index 189fb42313bbb667cada8592bea396facb026966..455fc2f972463fb9683665906d3318a1421ad91a 100644 (file)
@@ -26,6 +26,7 @@
 #include <asm/pgtable.h>
 #include <linux/cpumask.h>
 #include <linux/cpu.h>
+#include <linux/vmalloc.h>
 
 #include "zsmalloc.h"
 #include "zsmalloc_int.h"