diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2010-08-10 21:03:22 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-11 11:59:21 -0400 |
commit | a6eb9fe105d5de0053b261148cee56c94b4720ca (patch) | |
tree | 36e3f324a6a768397ef398674176c0f5f5365bff /include | |
parent | cd1542c8197fc3c2eb3a8301505d5d9738fab1e4 (diff) |
dma-mapping: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN
Now each architecture has the own dma_get_cache_alignment implementation.
dma_get_cache_alignment returns the minimum DMA alignment. Architectures
define it as ARCH_KMALLOC_MINALIGN (it's used to make sure that malloc'ed
buffer is DMA-safe; the buffer doesn't share a cache with the others). So
we can unify dma_get_cache_alignment implementations.
This patch:
dma_get_cache_alignment() needs to know if an architecture defines
ARCH_KMALLOC_MINALIGN or not (needs to know if architecture has DMA
alignment restriction). However, slab.h define ARCH_KMALLOC_MINALIGN if
architectures doesn't define it.
Let's rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN.
ARCH_KMALLOC_MINALIGN is used only in the internals of slab/slob/slub
(except for crypto).
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Cc: <linux-arch@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/slab_def.h | 4 | ||||
-rw-r--r-- | include/linux/slob_def.h | 4 | ||||
-rw-r--r-- | include/linux/slub_def.h | 8 |
3 files changed, 11 insertions, 5 deletions
diff --git a/include/linux/slab_def.h b/include/linux/slab_def.h index 1acfa73ce2ac..791a502f6906 100644 --- a/include/linux/slab_def.h +++ b/include/linux/slab_def.h | |||
@@ -17,7 +17,6 @@ | |||
17 | 17 | ||
18 | #include <trace/events/kmem.h> | 18 | #include <trace/events/kmem.h> |
19 | 19 | ||
20 | #ifndef ARCH_KMALLOC_MINALIGN | ||
21 | /* | 20 | /* |
22 | * Enforce a minimum alignment for the kmalloc caches. | 21 | * Enforce a minimum alignment for the kmalloc caches. |
23 | * Usually, the kmalloc caches are cache_line_size() aligned, except when | 22 | * Usually, the kmalloc caches are cache_line_size() aligned, except when |
@@ -27,6 +26,9 @@ | |||
27 | * ARCH_KMALLOC_MINALIGN allows that. | 26 | * ARCH_KMALLOC_MINALIGN allows that. |
28 | * Note that increasing this value may disable some debug features. | 27 | * Note that increasing this value may disable some debug features. |
29 | */ | 28 | */ |
29 | #ifdef ARCH_DMA_MINALIGN | ||
30 | #define ARCH_KMALLOC_MINALIGN ARCH_DMA_MINALIGN | ||
31 | #else | ||
30 | #define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long long) | 32 | #define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long long) |
31 | #endif | 33 | #endif |
32 | 34 | ||
diff --git a/include/linux/slob_def.h b/include/linux/slob_def.h index 62667f72c2ef..4382db09df4f 100644 --- a/include/linux/slob_def.h +++ b/include/linux/slob_def.h | |||
@@ -1,7 +1,9 @@ | |||
1 | #ifndef __LINUX_SLOB_DEF_H | 1 | #ifndef __LINUX_SLOB_DEF_H |
2 | #define __LINUX_SLOB_DEF_H | 2 | #define __LINUX_SLOB_DEF_H |
3 | 3 | ||
4 | #ifndef ARCH_KMALLOC_MINALIGN | 4 | #ifdef ARCH_DMA_MINALIGN |
5 | #define ARCH_KMALLOC_MINALIGN ARCH_DMA_MINALIGN | ||
6 | #else | ||
5 | #define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long) | 7 | #define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long) |
6 | #endif | 8 | #endif |
7 | 9 | ||
diff --git a/include/linux/slub_def.h b/include/linux/slub_def.h index 6447a723ecb1..6d14409c4d9a 100644 --- a/include/linux/slub_def.h +++ b/include/linux/slub_def.h | |||
@@ -106,15 +106,17 @@ struct kmem_cache { | |||
106 | /* | 106 | /* |
107 | * Kmalloc subsystem. | 107 | * Kmalloc subsystem. |
108 | */ | 108 | */ |
109 | #if defined(ARCH_KMALLOC_MINALIGN) && ARCH_KMALLOC_MINALIGN > 8 | 109 | #if defined(ARCH_DMA_MINALIGN) && ARCH_DMA_MINALIGN > 8 |
110 | #define KMALLOC_MIN_SIZE ARCH_KMALLOC_MINALIGN | 110 | #define KMALLOC_MIN_SIZE ARCH_DMA_MINALIGN |
111 | #else | 111 | #else |
112 | #define KMALLOC_MIN_SIZE 8 | 112 | #define KMALLOC_MIN_SIZE 8 |
113 | #endif | 113 | #endif |
114 | 114 | ||
115 | #define KMALLOC_SHIFT_LOW ilog2(KMALLOC_MIN_SIZE) | 115 | #define KMALLOC_SHIFT_LOW ilog2(KMALLOC_MIN_SIZE) |
116 | 116 | ||
117 | #ifndef ARCH_KMALLOC_MINALIGN | 117 | #ifdef ARCH_DMA_MINALIGN |
118 | #define ARCH_KMALLOC_MINALIGN ARCH_DMA_MINALIGN | ||
119 | #else | ||
118 | #define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long long) | 120 | #define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long long) |
119 | #endif | 121 | #endif |
120 | 122 | ||