[PATCH] x86: Change thread_info's flag field back to 32 bits

From: Joe Korty
Date: Wed Dec 03 2008 - 18:58:36 EST


Change x86_64's thread_info 'flags' field back to __u32.

This was changed to 'unsigned long' when the thread_info*.h
for i386 and x86_64 were merged. Change it back. We can
do this as only 27 bits of 'flags' are actually used.

This change actually packs down thread_info by 64 bits:
32 bits are saved by the smaller flags, and 32 bits are
saved by the following 'mm_segment_t field' becoming
naturally 64-bit aligned.

Signed-off-by: Joe Korty <joe.korty@xxxxxxxx>

Index: 2.6.28-rc7/arch/x86/include/asm/thread_info.h
===================================================================
--- 2.6.28-rc7.orig/arch/x86/include/asm/thread_info.h 2008-12-03 17:53:10.000000000 -0500
+++ 2.6.28-rc7/arch/x86/include/asm/thread_info.h 2008-12-03 18:31:40.000000000 -0500
@@ -24,7 +24,7 @@
struct thread_info {
struct task_struct *task; /* main task structure */
struct exec_domain *exec_domain; /* execution domain */
- unsigned long flags; /* low level flags */
+ __u32 flags; /* low level flags */
__u32 status; /* thread synchronous flags */
__u32 cpu; /* current CPU */
int preempt_count; /* 0 => preemptable,
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/