]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - include/linux/slub_def.h
Merge tag 'v2.6.37' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / include / linux / slub_def.h
index 9f63538928c0451c23b02cfe00c309ea00d54534..e4f5ed180b9bbe226714f2b40fd0d95516ad3c12 100644 (file)
@@ -87,7 +87,7 @@ struct kmem_cache {
        unsigned long min_partial;
        const char *name;       /* Name (only for display!) */
        struct list_head list;  /* List of slab caches */
-#ifdef CONFIG_SLUB_DEBUG
+#ifdef CONFIG_SYSFS
        struct kobject kobj;    /* For sysfs */
 #endif
 
@@ -96,11 +96,8 @@ struct kmem_cache {
         * Defragmentation by allocating from a remote node.
         */
        int remote_node_defrag_ratio;
-       struct kmem_cache_node *node[MAX_NUMNODES];
-#else
-       /* Avoid an extra cache line for UP */
-       struct kmem_cache_node local_node;
 #endif
+       struct kmem_cache_node *node[MAX_NUMNODES];
 };
 
 /*
@@ -139,19 +136,16 @@ struct kmem_cache {
 
 #ifdef CONFIG_ZONE_DMA
 #define SLUB_DMA __GFP_DMA
-/* Reserve extra caches for potential DMA use */
-#define KMALLOC_CACHES (2 * SLUB_PAGE_SHIFT)
 #else
 /* Disable DMA functionality */
 #define SLUB_DMA (__force gfp_t)0
-#define KMALLOC_CACHES SLUB_PAGE_SHIFT
 #endif
 
 /*
  * We keep the general caches in an array of slab caches that are used for
  * 2^x bytes of allocations.
  */
-extern struct kmem_cache kmalloc_caches[KMALLOC_CACHES];
+extern struct kmem_cache *kmalloc_caches[SLUB_PAGE_SHIFT];
 
 /*
  * Sorry that the following has to be that ugly but some versions of GCC
@@ -216,7 +210,7 @@ static __always_inline struct kmem_cache *kmalloc_slab(size_t size)
        if (index == 0)
                return NULL;
 
-       return &kmalloc_caches[index];
+       return kmalloc_caches[index];
 }
 
 void *kmem_cache_alloc(struct kmem_cache *, gfp_t);