aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-x86/pda.h
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2008-01-30 07:31:21 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:31:21 -0500
commitd88879b2d0225da3ba460bbdb8361bb049653671 (patch)
treed9a0b8a215434eab6f29df389780dd73b427b8dd /include/asm-x86/pda.h
parentbdb4f156064e5f627213af82292eb8b5cf2dc5aa (diff)
x86-64: make pda's cpunumber and nodenumber unsigned
This generally allows better code to be generated, since the zero- extension during 32-bit operations comes for free (needed when the result is used as array index or similar), whereas sign extension must be done explicitly and frequently requires a one byte larger instruction due to the necessary rex64 prefix. Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/asm-x86/pda.h')
-rw-r--r--include/asm-x86/pda.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/asm-x86/pda.h b/include/asm-x86/pda.h
index 3d9dd653628a..b620d0c39a93 100644
--- a/include/asm-x86/pda.h
+++ b/include/asm-x86/pda.h
@@ -15,14 +15,14 @@ struct x8664_pda {
15 unsigned long kernelstack; /* 16 top of kernel stack for current */ 15 unsigned long kernelstack; /* 16 top of kernel stack for current */
16 unsigned long oldrsp; /* 24 user rsp for system call */ 16 unsigned long oldrsp; /* 24 user rsp for system call */
17 int irqcount; /* 32 Irq nesting counter. Starts with -1 */ 17 int irqcount; /* 32 Irq nesting counter. Starts with -1 */
18 int cpunumber; /* 36 Logical CPU number */ 18 unsigned int cpunumber; /* 36 Logical CPU number */
19#ifdef CONFIG_CC_STACKPROTECTOR 19#ifdef CONFIG_CC_STACKPROTECTOR
20 unsigned long stack_canary; /* 40 stack canary value */ 20 unsigned long stack_canary; /* 40 stack canary value */
21 /* gcc-ABI: this canary MUST be at 21 /* gcc-ABI: this canary MUST be at
22 offset 40!!! */ 22 offset 40!!! */
23#endif 23#endif
24 char *irqstackptr; 24 char *irqstackptr;
25 int nodenumber; /* number of current node */ 25 unsigned int nodenumber; /* number of current node */
26 unsigned int __softirq_pending; 26 unsigned int __softirq_pending;
27 unsigned int __nmi_count; /* number of NMI on this CPUs */ 27 unsigned int __nmi_count; /* number of NMI on this CPUs */
28 short mmu_state; 28 short mmu_state;