* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6: slab: fix object alignment slub: add missing __percpu markup in mm/slub_def.h
Unified · Split
| @@ -68,7 +68,7 @@ struct kmem_cache_order_objects { · 67 unmodified lines | |||
| 68 | * Slab cache management. | 68 | * Slab cache management. |
| 69 | */ | 69 | */ |
| 70 | struct kmem_cache { | 70 | struct kmem_cache { |
| 71 | struct kmem_cache_cpu *cpu_slab; | 71 | struct kmem_cache_cpu __percpu *cpu_slab; |
| 72 | /* Used for retriving partial slabs etc */ | 72 | /* Used for retriving partial slabs etc */ |
| 73 | unsigned long flags; | 73 | unsigned long flags; |
| 74 | int size; /* The size of an object including meta data */ | 74 | int size; /* The size of an object including meta data */ |
| @@ -2330,8 +2330,8 @@ kmem_cache_create (const char *name, size_t size, size_t align, · 2329 unmodified lines | |||
| 2330 | } | 2330 | } |
| 2331 | #if FORCED_DEBUG && defined(CONFIG_DEBUG_PAGEALLOC) | 2331 | #if FORCED_DEBUG && defined(CONFIG_DEBUG_PAGEALLOC) |
| 2332 | if (size >= malloc_sizes[INDEX_L3 + 1].cs_size | 2332 | if (size >= malloc_sizes[INDEX_L3 + 1].cs_size |
| 2333 | && cachep->obj_size > cache_line_size() && size < PAGE_SIZE) { | 2333 | && cachep->obj_size > cache_line_size() && ALIGN(size, align) < PAGE_SIZE) { |
| 2334 | cachep->obj_offset += PAGE_SIZE - size; | 2334 | cachep->obj_offset += PAGE_SIZE - ALIGN(size, align); |
| 2335 | size = PAGE_SIZE; | 2335 | size = PAGE_SIZE; |
| 2336 | } | 2336 | } |
| 2337 | #endif | 2337 | #endif |