Module Name: src
Committed By: skrll
Date: Sun Nov 23 09:05:23 UTC 2014
Modified Files:
src/sys/arch/arm/include: cpu.h
Log Message:
Fix TPIDRPRW_IS_CURLWP builds.
A MULTIPROCESSOR kernel requires TPIDRPRW_IS_CURCPU.
To generate a diff of this commit:
cvs rdiff -u -r1.83 -r1.84 src/sys/arch/arm/include/cpu.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/arm/include/cpu.h
diff -u src/sys/arch/arm/include/cpu.h:1.83 src/sys/arch/arm/include/cpu.h:1.84
--- src/sys/arch/arm/include/cpu.h:1.83 Fri Mar 28 21:44:59 2014
+++ src/sys/arch/arm/include/cpu.h Sun Nov 23 09:05:23 2014
@@ -179,6 +179,9 @@ struct cpu_info {
extern struct cpu_info cpu_info_store;
#if defined(TPIDRPRW_IS_CURLWP)
+#if defined(MULTIPROCESSOR)
+#error MULTIPROCESSOR requires TPIDRPRW_IS_CURCPU not TPIDRPRW_IS_CURLWP
+#else
static inline struct lwp *
_curlwp(void)
{
@@ -191,12 +194,8 @@ _curlwp_set(struct lwp *l)
armreg_tpidrprw_write((uintptr_t)l);
}
-#define curlwp (_curlwp())
-static inline struct cpu_info *
-curcpu(void)
-{
- return curlwp->l_cpu;
-}
+#define curcpu() (&cpu_info_store)
+#endif
#elif defined(TPIDRPRW_IS_CURCPU)
static inline struct cpu_info *
curcpu(void)
@@ -206,7 +205,7 @@ curcpu(void)
#elif !defined(MULTIPROCESSOR)
#define curcpu() (&cpu_info_store)
#else
-#error MULTIPROCESSOR requires TPIDRPRW_IS_CURLWP or TPIDRPRW_IS_CURCPU
+#error MULTIPROCESSOR requires TPIDRPRW_IS_CURCPU
#endif /* !TPIDRPRW_IS_CURCPU && !TPIDRPRW_IS_CURLWP */
#ifndef curlwp