vserver 2.0 rc7
[linux-2.6.git] / include / asm-m68knommu / thread_info.h
index cedf441..c8153b7 100644 (file)
 
 #ifndef __ASSEMBLY__
 
+/*
+ * Size of kernel stack for each process. This must be a power of 2...
+ */
+#ifdef CONFIG_4KSTACKS
+#define THREAD_SIZE_ORDER (0)
+#else
+#define THREAD_SIZE_ORDER (1)
+#endif
+                                                                                
+/*
+ * for asm files, THREAD_SIZE is now generated by asm-offsets.c
+ */
+#define THREAD_SIZE (PAGE_SIZE<<THREAD_SIZE_ORDER)
+
 /*
  * low level task data.
- * If you change this, change the TI_* offsets below to match.
  */
 struct thread_info {
        struct task_struct *task;               /* main task structure */
@@ -60,20 +73,12 @@ static inline struct thread_info *current_thread_info(void)
 
 /* thread information allocation */
 #define alloc_thread_info(tsk) ((struct thread_info *) \
-                               __get_free_pages(GFP_KERNEL, 1))
-#define free_thread_info(ti)   free_pages((unsigned long) (ti), 1)
+                               __get_free_pages(GFP_KERNEL, THREAD_SIZE_ORDER))
+#define free_thread_info(ti)   free_pages((unsigned long) (ti), THREAD_SIZE_ORDER)
 #define get_thread_info(ti)    get_task_struct((ti)->task)
 #define put_thread_info(ti)    put_task_struct((ti)->task)
 #endif /* __ASSEMBLY__ */
 
-/*
- * Offsets in thread_info structure, used in assembly code
- */
-#define TI_TASK                0
-#define TI_EXECDOMAIN  4
-#define TI_FLAGS       8
-#define TI_CPU         12
-
 #define        PREEMPT_ACTIVE  0x4000000
 
 /*