Skip to content

Commit

Permalink
[PATCH] Move read_mostly definition to asm/cache.h
Browse files Browse the repository at this point in the history
Seems like needless clutter having a bunch of #if defined(CONFIG_$ARCH) in
include/linux/cache.h.  Move the per architecture section definition to
asm/cache.h, and keep the if-not-defined dummy case in linux/cache.h to
catch architectures which don't implement the section.

Verified that symbols still go in .data.read_mostly on parisc,
and the compile doesn't break.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Kyle McMartin authored and Linus Torvalds committed Mar 23, 2006
1 parent 6a2900b commit 804f159
Show file tree
Hide file tree
Showing 6 changed files with 11 additions and 3 deletions.
2 changes: 2 additions & 0 deletions include/asm-i386/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,6 @@
#define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT)
#define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)

#define __read_mostly __attribute__((__section__(".data.read_mostly")))

#endif
2 changes: 2 additions & 0 deletions include/asm-ia64/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,6 @@
# define SMP_CACHE_BYTES (1 << 3)
#endif

#define __read_mostly __attribute__((__section__(".data.read_mostly")))

#endif /* _ASM_IA64_CACHE_H */
2 changes: 2 additions & 0 deletions include/asm-parisc/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@

#define SMP_CACHE_BYTES L1_CACHE_BYTES

#define __read_mostly __attribute__((__section__(".data.read_mostly")))

extern void flush_data_cache_local(void *); /* flushes local data-cache only */
extern void flush_instruction_cache_local(void *); /* flushes local code-cache only */
#ifdef CONFIG_SMP
Expand Down
2 changes: 2 additions & 0 deletions include/asm-sparc64/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,6 @@
#define SMP_CACHE_BYTES_SHIFT 6
#define SMP_CACHE_BYTES (1 << SMP_CACHE_BYTES_SHIFT) /* L2 cache line size. */

#define __read_mostly __attribute__((__section__(".data.read_mostly")))

#endif
2 changes: 2 additions & 0 deletions include/asm-x86_64/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
__attribute__((__section__(".data.page_aligned")))
#endif

#define __read_mostly __attribute__((__section__(".data.read_mostly")))

#endif

#endif
4 changes: 1 addition & 3 deletions include/linux/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,7 @@
#define SMP_CACHE_BYTES L1_CACHE_BYTES
#endif

#if defined(CONFIG_X86) || defined(CONFIG_SPARC64) || defined(CONFIG_IA64) || defined(CONFIG_PARISC)
#define __read_mostly __attribute__((__section__(".data.read_mostly")))
#else
#ifndef __read_mostly
#define __read_mostly
#endif

Expand Down

0 comments on commit 804f159

Please sign in to comment.