diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-26 21:43:55 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-26 21:43:55 +0400 |
commit | 1ef708ea449e5eab2780020ec79485db80937833 (patch) | |
tree | abf5f3fca27aba1c517e9fe02c9381aee4775720 | |
parent | 5770a3fb5f8544d40ae03b010318345cdd05d662 (diff) | |
parent | 8a549f8b581db95fec1e2d86ff857594fcfcd9db (diff) | |
download | linux-1ef708ea449e5eab2780020ec79485db80937833.tar.xz |
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
[IA64] Fix __{in,out}s{w,l} to handle unaligned data
[IA64] Fix ia64 build failure when CONFIG_SFC=m
-rw-r--r-- | arch/ia64/include/asm/io.h | 10 | ||||
-rw-r--r-- | arch/ia64/kernel/smpboot.c | 1 |
2 files changed, 7 insertions, 4 deletions
diff --git a/arch/ia64/include/asm/io.h b/arch/ia64/include/asm/io.h index 260a85ac9d6a..7f257507cd86 100644 --- a/arch/ia64/include/asm/io.h +++ b/arch/ia64/include/asm/io.h @@ -19,6 +19,8 @@ * Copyright (C) 1999 Don Dugger <don.dugger@intel.com> */ +#include <asm/unaligned.h> + /* We don't use IO slowdowns on the ia64, but.. */ #define __SLOW_DOWN_IO do { } while (0) #define SLOW_DOWN_IO do { } while (0) @@ -241,7 +243,7 @@ __insw (unsigned long port, void *dst, unsigned long count) unsigned short *dp = dst; while (count--) - *dp++ = platform_inw(port); + put_unaligned(platform_inw(port), dp++); } static inline void @@ -250,7 +252,7 @@ __insl (unsigned long port, void *dst, unsigned long count) unsigned int *dp = dst; while (count--) - *dp++ = platform_inl(port); + put_unaligned(platform_inl(port), dp++); } static inline void @@ -268,7 +270,7 @@ __outsw (unsigned long port, const void *src, unsigned long count) const unsigned short *sp = src; while (count--) - platform_outw(*sp++, port); + platform_outw(get_unaligned(sp++), port); } static inline void @@ -277,7 +279,7 @@ __outsl (unsigned long port, const void *src, unsigned long count) const unsigned int *sp = src; while (count--) - platform_outl(*sp++, port); + platform_outl(get_unaligned(sp++), port); } /* diff --git a/arch/ia64/kernel/smpboot.c b/arch/ia64/kernel/smpboot.c index b39853a292d5..bcea81e432fd 100644 --- a/arch/ia64/kernel/smpboot.c +++ b/arch/ia64/kernel/smpboot.c @@ -138,6 +138,7 @@ cpumask_t cpu_possible_map = CPU_MASK_NONE; EXPORT_SYMBOL(cpu_possible_map); cpumask_t cpu_core_map[NR_CPUS] __cacheline_aligned; +EXPORT_SYMBOL(cpu_core_map); DEFINE_PER_CPU_SHARED_ALIGNED(cpumask_t, cpu_sibling_map); EXPORT_PER_CPU_SYMBOL(cpu_sibling_map); |