diff options
Diffstat (limited to 'sys/arch/hppa/include/cpu.h')
-rw-r--r-- | sys/arch/hppa/include/cpu.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sys/arch/hppa/include/cpu.h b/sys/arch/hppa/include/cpu.h index 0087c71e7d4..40b3af0414b 100644 --- a/sys/arch/hppa/include/cpu.h +++ b/sys/arch/hppa/include/cpu.h @@ -1,4 +1,4 @@ -/* $OpenBSD: cpu.h,v 1.69 2010/04/29 13:14:44 jsing Exp $ */ +/* $OpenBSD: cpu.h,v 1.70 2010/05/16 14:54:43 jsing Exp $ */ /* * Copyright (c) 2000-2004 Michael Shalayeff @@ -68,7 +68,14 @@ #include <sys/queue.h> #include <sys/sched.h> +/* + * Note that the alignment of ci_trap_save is important since we want to keep + * it within a single cache line. As a result, it must be kept as the first + * entry within the cpu_info struct. + */ struct cpu_info { + register_t ci_trap_save[16]; + struct device *ci_dev; int ci_cpuid; hppa_hpa_t ci_hpa; @@ -85,7 +92,7 @@ struct cpu_info { struct schedstate_percpu ci_schedstate; u_int32_t ci_randseed; -}; +} __attribute__((__aligned__(64))); #ifdef MULTIPROCESSOR #define HPPA_MAXCPUS 1 |