# HG changeset patch # User yamahata@xxxxxxxxxxxxx # Node ID ac23e410d25ec94b00e162663ba4380efa722fe5 # Parent eb8981d0834536bff3732185c3843433a62446af define cacheline_aligned and its variants PATCHNAME: cacheline_aligned Signed-off-by: Isaku Yamahata diff -r eb8981d08345 -r ac23e410d25e xen/include/asm-ia64/config.h --- a/xen/include/asm-ia64/config.h Mon Jul 03 12:24:42 2006 +0900 +++ b/xen/include/asm-ia64/config.h Mon Jul 03 19:15:30 2006 +0900 @@ -140,17 +140,19 @@ extern int smp_num_siblings; #define platform_outw __ia64_outw #define platform_outl __ia64_outl -// FIXME: This just overrides a use in a typedef (not allowed in ia64, -// or maybe just in older gcc's?) used in timer.c but should be OK -// (and indeed is probably required!) elsewhere -#undef __cacheline_aligned -#undef ____cacheline_aligned -#undef ____cacheline_aligned_in_smp -#define __cacheline_aligned +#include +#ifndef CONFIG_SMP #define __cacheline_aligned_in_smp -#define ____cacheline_aligned +#else +#define __cacheline_aligned_in_smp __cacheline_aligned +#endif + +#define ____cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES))) +#ifndef CONFIG_SMP #define ____cacheline_aligned_in_smp -#define ____cacheline_maxaligned_in_smp +#else +#define ____cacheline_aligned_in_smp ____cacheline_aligned +#endif #ifndef __ASSEMBLY__ #include "asm/types.h" // for u64