forked from Minki/linux
804f1594cc
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>
31 lines
757 B
C
31 lines
757 B
C
#ifndef _ASM_IA64_CACHE_H
|
|
#define _ASM_IA64_CACHE_H
|
|
|
|
#include <linux/config.h>
|
|
|
|
/*
|
|
* Copyright (C) 1998-2000 Hewlett-Packard Co
|
|
* David Mosberger-Tang <davidm@hpl.hp.com>
|
|
*/
|
|
|
|
/* Bytes per L1 (data) cache line. */
|
|
#define L1_CACHE_SHIFT CONFIG_IA64_L1_CACHE_SHIFT
|
|
#define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
|
|
|
|
#ifdef CONFIG_SMP
|
|
# define SMP_CACHE_SHIFT L1_CACHE_SHIFT
|
|
# define SMP_CACHE_BYTES L1_CACHE_BYTES
|
|
#else
|
|
/*
|
|
* The "aligned" directive can only _increase_ alignment, so this is
|
|
* safe and provides an easy way to avoid wasting space on a
|
|
* uni-processor:
|
|
*/
|
|
# define SMP_CACHE_SHIFT 3
|
|
# define SMP_CACHE_BYTES (1 << 3)
|
|
#endif
|
|
|
|
#define __read_mostly __attribute__((__section__(".data.read_mostly")))
|
|
|
|
#endif /* _ASM_IA64_CACHE_H */
|