summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.transmeta.com>2002-10-15 04:46:38 -0700
committerLinus Torvalds <torvalds@home.transmeta.com>2002-10-15 04:46:38 -0700
commit46356545dde0c1b09e93f8c0bc7918da732c13b9 (patch)
tree85c59b0e6ab6c000b0ec95331f2e00f32efddbd6 /include
parent0789ed0a36b23606562a40a483239d1acf0d98f7 (diff)
parent1171e98181a6a1ce49e98fe274fe1b3ddc0d0f0f (diff)
Merge UML update
Diffstat (limited to 'include')
-rw-r--r--include/asm-um/cache.h3
-rw-r--r--include/asm-um/smp.h17
-rw-r--r--include/asm-um/thread_info.h4
3 files changed, 23 insertions, 1 deletions
diff --git a/include/asm-um/cache.h b/include/asm-um/cache.h
index a4962992cf86..4b134fe8504e 100644
--- a/include/asm-um/cache.h
+++ b/include/asm-um/cache.h
@@ -1,7 +1,10 @@
#ifndef __UM_CACHE_H
#define __UM_CACHE_H
+/* These are x86 numbers */
#define L1_CACHE_SHIFT 5
#define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
+#define L1_CACHE_SHIFT_MAX 7 /* largest L1 which this arch supports */
+
#endif
diff --git a/include/asm-um/smp.h b/include/asm-um/smp.h
index 931b1f956f17..a991b9feea3f 100644
--- a/include/asm-um/smp.h
+++ b/include/asm-um/smp.h
@@ -6,15 +6,30 @@ extern unsigned long cpu_online_map;
#ifdef CONFIG_SMP
#include "linux/config.h"
+#include "linux/bitops.h"
#include "asm/current.h"
-#define smp_processor_id() (current->processor)
+#define smp_processor_id() (current->thread_info->cpu)
#define cpu_logical_map(n) (n)
#define cpu_number_map(n) (n)
#define PROC_CHANGE_PENALTY 15 /* Pick a number, any number */
extern int hard_smp_processor_id(void);
#define NO_PROC_ID -1
+#define cpu_online(cpu) (cpu_online_map & (1<<(cpu)))
+
+extern int ncpus;
+#define cpu_possible(cpu) (cpu < ncpus)
+
+extern inline unsigned int num_online_cpus(void)
+{
+ return(hweight32(cpu_online_map));
+}
+
+extern inline void smp_cpus_done(unsigned int maxcpus)
+{
+}
+
#endif
#endif
diff --git a/include/asm-um/thread_info.h b/include/asm-um/thread_info.h
index 494e367f4ff9..1cb0f45359f5 100644
--- a/include/asm-um/thread_info.h
+++ b/include/asm-um/thread_info.h
@@ -64,10 +64,14 @@ static inline struct thread_info *current_thread_info(void)
#define TIF_SYSCALL_TRACE 0 /* syscall trace active */
#define TIF_SIGPENDING 1 /* signal pending */
#define TIF_NEED_RESCHED 2 /* rescheduling necessary */
+#define TIF_POLLING_NRFLAG 3 /* true if poll_idle() is polling
+ * TIF_NEED_RESCHED
+ */
#define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
#define _TIF_SIGPENDING (1 << TIF_SIGPENDING)
#define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED)
+#define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG)
#endif