diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-03-18 13:45:21 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-03-18 13:45:21 -0400 |
commit | f2e1fbb5f2177227f71c4fc0491e531dd7acd385 (patch) | |
tree | c45485e3cd8a04f78184ef3bd9ce6972c74ac834 /arch/x86/include | |
parent | 508996b6a0ef0c7aa7701995d137e71c56180752 (diff) | |
parent | 4981d01eada5354d81c8929d5b2836829ba3df7b (diff) |
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
x86: Flush TLB if PGD entry is changed in i386 PAE mode
x86, dumpstack: Correct stack dump info when frame pointer is available
x86: Clean up csum-copy_64.S a bit
x86: Fix common misspellings
x86: Fix misspelling and align params
x86: Use PentiumPro-optimized partial_csum() on VIA C7
Diffstat (limited to 'arch/x86/include')
-rw-r--r-- | arch/x86/include/asm/cacheflush.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/kdebug.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/nmi.h | 4 | ||||
-rw-r--r-- | arch/x86/include/asm/nops.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/olpc.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/perf_event_p4.h | 4 | ||||
-rw-r--r-- | arch/x86/include/asm/pgtable-3level.h | 11 | ||||
-rw-r--r-- | arch/x86/include/asm/processor-flags.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/ptrace-abi.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/ptrace.h | 4 | ||||
-rw-r--r-- | arch/x86/include/asm/stacktrace.h | 6 | ||||
-rw-r--r-- | arch/x86/include/asm/tsc.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/xen/interface.h | 2 |
13 files changed, 20 insertions, 25 deletions
diff --git a/arch/x86/include/asm/cacheflush.h b/arch/x86/include/asm/cacheflush.h index 62f084478f7e..4e12668711e5 100644 --- a/arch/x86/include/asm/cacheflush.h +++ b/arch/x86/include/asm/cacheflush.h | |||
@@ -71,7 +71,7 @@ static inline void set_page_memtype(struct page *pg, unsigned long memtype) { } | |||
71 | * Read/Write : ReadOnly, ReadWrite | 71 | * Read/Write : ReadOnly, ReadWrite |
72 | * Presence : NotPresent | 72 | * Presence : NotPresent |
73 | * | 73 | * |
74 | * Within a catagory, the attributes are mutually exclusive. | 74 | * Within a category, the attributes are mutually exclusive. |
75 | * | 75 | * |
76 | * The implementation of this API will take care of various aspects that | 76 | * The implementation of this API will take care of various aspects that |
77 | * are associated with changing such attributes, such as: | 77 | * are associated with changing such attributes, such as: |
diff --git a/arch/x86/include/asm/kdebug.h b/arch/x86/include/asm/kdebug.h index 518bbbb9ee59..fe2cc6e105fa 100644 --- a/arch/x86/include/asm/kdebug.h +++ b/arch/x86/include/asm/kdebug.h | |||
@@ -26,7 +26,7 @@ extern void die(const char *, struct pt_regs *,long); | |||
26 | extern int __must_check __die(const char *, struct pt_regs *, long); | 26 | extern int __must_check __die(const char *, struct pt_regs *, long); |
27 | extern void show_registers(struct pt_regs *regs); | 27 | extern void show_registers(struct pt_regs *regs); |
28 | extern void show_trace(struct task_struct *t, struct pt_regs *regs, | 28 | extern void show_trace(struct task_struct *t, struct pt_regs *regs, |
29 | unsigned long *sp); | 29 | unsigned long *sp, unsigned long bp); |
30 | extern void __show_regs(struct pt_regs *regs, int all); | 30 | extern void __show_regs(struct pt_regs *regs, int all); |
31 | extern void show_regs(struct pt_regs *regs); | 31 | extern void show_regs(struct pt_regs *regs); |
32 | extern unsigned long oops_begin(void); | 32 | extern unsigned long oops_begin(void); |
diff --git a/arch/x86/include/asm/nmi.h b/arch/x86/include/asm/nmi.h index 07f46016d3ff..4886a68f267e 100644 --- a/arch/x86/include/asm/nmi.h +++ b/arch/x86/include/asm/nmi.h | |||
@@ -29,8 +29,8 @@ void arch_trigger_all_cpu_backtrace(void); | |||
29 | * external nmis, because the local ones are more frequent. | 29 | * external nmis, because the local ones are more frequent. |
30 | * | 30 | * |
31 | * Also setup some default high/normal/low settings for | 31 | * Also setup some default high/normal/low settings for |
32 | * subsystems to registers with. Using 4 bits to seperate | 32 | * subsystems to registers with. Using 4 bits to separate |
33 | * the priorities. This can go alot higher if needed be. | 33 | * the priorities. This can go a lot higher if needed be. |
34 | */ | 34 | */ |
35 | 35 | ||
36 | #define NMI_LOCAL_SHIFT 16 /* randomly picked */ | 36 | #define NMI_LOCAL_SHIFT 16 /* randomly picked */ |
diff --git a/arch/x86/include/asm/nops.h b/arch/x86/include/asm/nops.h index 6d8723a766cc..af788496020b 100644 --- a/arch/x86/include/asm/nops.h +++ b/arch/x86/include/asm/nops.h | |||
@@ -38,7 +38,7 @@ | |||
38 | #define K8_NOP8 K8_NOP4 K8_NOP4 | 38 | #define K8_NOP8 K8_NOP4 K8_NOP4 |
39 | 39 | ||
40 | /* K7 nops | 40 | /* K7 nops |
41 | uses eax dependencies (arbitary choice) | 41 | uses eax dependencies (arbitrary choice) |
42 | 1: nop | 42 | 1: nop |
43 | 2: movl %eax,%eax | 43 | 2: movl %eax,%eax |
44 | 3: leal (,%eax,1),%eax | 44 | 3: leal (,%eax,1),%eax |
diff --git a/arch/x86/include/asm/olpc.h b/arch/x86/include/asm/olpc.h index f482010350fb..5ca6801b75f3 100644 --- a/arch/x86/include/asm/olpc.h +++ b/arch/x86/include/asm/olpc.h | |||
@@ -20,7 +20,7 @@ extern struct olpc_platform_t olpc_platform_info; | |||
20 | 20 | ||
21 | /* | 21 | /* |
22 | * OLPC board IDs contain the major build number within the mask 0x0ff0, | 22 | * OLPC board IDs contain the major build number within the mask 0x0ff0, |
23 | * and the minor build number withing 0x000f. Pre-builds have a minor | 23 | * and the minor build number within 0x000f. Pre-builds have a minor |
24 | * number less than 8, and normal builds start at 8. For example, 0x0B10 | 24 | * number less than 8, and normal builds start at 8. For example, 0x0B10 |
25 | * is a PreB1, and 0x0C18 is a C1. | 25 | * is a PreB1, and 0x0C18 is a C1. |
26 | */ | 26 | */ |
diff --git a/arch/x86/include/asm/perf_event_p4.h b/arch/x86/include/asm/perf_event_p4.h index cc29086e30cd..56fd9e3abbda 100644 --- a/arch/x86/include/asm/perf_event_p4.h +++ b/arch/x86/include/asm/perf_event_p4.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Netburst Perfomance Events (P4, old Xeon) | 2 | * Netburst Performance Events (P4, old Xeon) |
3 | */ | 3 | */ |
4 | 4 | ||
5 | #ifndef PERF_EVENT_P4_H | 5 | #ifndef PERF_EVENT_P4_H |
@@ -9,7 +9,7 @@ | |||
9 | #include <linux/bitops.h> | 9 | #include <linux/bitops.h> |
10 | 10 | ||
11 | /* | 11 | /* |
12 | * NetBurst has perfomance MSRs shared between | 12 | * NetBurst has performance MSRs shared between |
13 | * threads if HT is turned on, ie for both logical | 13 | * threads if HT is turned on, ie for both logical |
14 | * processors (mem: in turn in Atom with HT support | 14 | * processors (mem: in turn in Atom with HT support |
15 | * perf-MSRs are not shared and every thread has its | 15 | * perf-MSRs are not shared and every thread has its |
diff --git a/arch/x86/include/asm/pgtable-3level.h b/arch/x86/include/asm/pgtable-3level.h index 94b979d1b58d..effff47a3c82 100644 --- a/arch/x86/include/asm/pgtable-3level.h +++ b/arch/x86/include/asm/pgtable-3level.h | |||
@@ -69,8 +69,6 @@ static inline void native_pmd_clear(pmd_t *pmd) | |||
69 | 69 | ||
70 | static inline void pud_clear(pud_t *pudp) | 70 | static inline void pud_clear(pud_t *pudp) |
71 | { | 71 | { |
72 | unsigned long pgd; | ||
73 | |||
74 | set_pud(pudp, __pud(0)); | 72 | set_pud(pudp, __pud(0)); |
75 | 73 | ||
76 | /* | 74 | /* |
@@ -79,13 +77,10 @@ static inline void pud_clear(pud_t *pudp) | |||
79 | * section 8.1: in PAE mode we explicitly have to flush the | 77 | * section 8.1: in PAE mode we explicitly have to flush the |
80 | * TLB via cr3 if the top-level pgd is changed... | 78 | * TLB via cr3 if the top-level pgd is changed... |
81 | * | 79 | * |
82 | * Make sure the pud entry we're updating is within the | 80 | * Currently all places where pud_clear() is called either have |
83 | * current pgd to avoid unnecessary TLB flushes. | 81 | * flush_tlb_mm() followed or don't need TLB flush (x86_64 code or |
82 | * pud_clear_bad()), so we don't need TLB flush here. | ||
84 | */ | 83 | */ |
85 | pgd = read_cr3(); | ||
86 | if (__pa(pudp) >= pgd && __pa(pudp) < | ||
87 | (pgd + sizeof(pgd_t)*PTRS_PER_PGD)) | ||
88 | write_cr3(pgd); | ||
89 | } | 84 | } |
90 | 85 | ||
91 | #ifdef CONFIG_SMP | 86 | #ifdef CONFIG_SMP |
diff --git a/arch/x86/include/asm/processor-flags.h b/arch/x86/include/asm/processor-flags.h index 7a3e836eb2a9..a898a2b6e10c 100644 --- a/arch/x86/include/asm/processor-flags.h +++ b/arch/x86/include/asm/processor-flags.h | |||
@@ -7,7 +7,7 @@ | |||
7 | */ | 7 | */ |
8 | #define X86_EFLAGS_CF 0x00000001 /* Carry Flag */ | 8 | #define X86_EFLAGS_CF 0x00000001 /* Carry Flag */ |
9 | #define X86_EFLAGS_PF 0x00000004 /* Parity Flag */ | 9 | #define X86_EFLAGS_PF 0x00000004 /* Parity Flag */ |
10 | #define X86_EFLAGS_AF 0x00000010 /* Auxillary carry Flag */ | 10 | #define X86_EFLAGS_AF 0x00000010 /* Auxiliary carry Flag */ |
11 | #define X86_EFLAGS_ZF 0x00000040 /* Zero Flag */ | 11 | #define X86_EFLAGS_ZF 0x00000040 /* Zero Flag */ |
12 | #define X86_EFLAGS_SF 0x00000080 /* Sign Flag */ | 12 | #define X86_EFLAGS_SF 0x00000080 /* Sign Flag */ |
13 | #define X86_EFLAGS_TF 0x00000100 /* Trap Flag */ | 13 | #define X86_EFLAGS_TF 0x00000100 /* Trap Flag */ |
diff --git a/arch/x86/include/asm/ptrace-abi.h b/arch/x86/include/asm/ptrace-abi.h index 52b098a6eebb..7b0a55a88851 100644 --- a/arch/x86/include/asm/ptrace-abi.h +++ b/arch/x86/include/asm/ptrace-abi.h | |||
@@ -31,7 +31,7 @@ | |||
31 | #define R12 24 | 31 | #define R12 24 |
32 | #define RBP 32 | 32 | #define RBP 32 |
33 | #define RBX 40 | 33 | #define RBX 40 |
34 | /* arguments: interrupts/non tracing syscalls only save upto here*/ | 34 | /* arguments: interrupts/non tracing syscalls only save up to here*/ |
35 | #define R11 48 | 35 | #define R11 48 |
36 | #define R10 56 | 36 | #define R10 56 |
37 | #define R9 64 | 37 | #define R9 64 |
diff --git a/arch/x86/include/asm/ptrace.h b/arch/x86/include/asm/ptrace.h index 78cd1ea94500..1babf8adecdf 100644 --- a/arch/x86/include/asm/ptrace.h +++ b/arch/x86/include/asm/ptrace.h | |||
@@ -73,7 +73,7 @@ struct pt_regs { | |||
73 | unsigned long r12; | 73 | unsigned long r12; |
74 | unsigned long rbp; | 74 | unsigned long rbp; |
75 | unsigned long rbx; | 75 | unsigned long rbx; |
76 | /* arguments: non interrupts/non tracing syscalls only save upto here*/ | 76 | /* arguments: non interrupts/non tracing syscalls only save up to here*/ |
77 | unsigned long r11; | 77 | unsigned long r11; |
78 | unsigned long r10; | 78 | unsigned long r10; |
79 | unsigned long r9; | 79 | unsigned long r9; |
@@ -103,7 +103,7 @@ struct pt_regs { | |||
103 | unsigned long r12; | 103 | unsigned long r12; |
104 | unsigned long bp; | 104 | unsigned long bp; |
105 | unsigned long bx; | 105 | unsigned long bx; |
106 | /* arguments: non interrupts/non tracing syscalls only save upto here*/ | 106 | /* arguments: non interrupts/non tracing syscalls only save up to here*/ |
107 | unsigned long r11; | 107 | unsigned long r11; |
108 | unsigned long r10; | 108 | unsigned long r10; |
109 | unsigned long r9; | 109 | unsigned long r9; |
diff --git a/arch/x86/include/asm/stacktrace.h b/arch/x86/include/asm/stacktrace.h index 52b5c7ed3608..d7e89c83645d 100644 --- a/arch/x86/include/asm/stacktrace.h +++ b/arch/x86/include/asm/stacktrace.h | |||
@@ -47,7 +47,7 @@ struct stacktrace_ops { | |||
47 | }; | 47 | }; |
48 | 48 | ||
49 | void dump_trace(struct task_struct *tsk, struct pt_regs *regs, | 49 | void dump_trace(struct task_struct *tsk, struct pt_regs *regs, |
50 | unsigned long *stack, | 50 | unsigned long *stack, unsigned long bp, |
51 | const struct stacktrace_ops *ops, void *data); | 51 | const struct stacktrace_ops *ops, void *data); |
52 | 52 | ||
53 | #ifdef CONFIG_X86_32 | 53 | #ifdef CONFIG_X86_32 |
@@ -86,11 +86,11 @@ stack_frame(struct task_struct *task, struct pt_regs *regs) | |||
86 | 86 | ||
87 | extern void | 87 | extern void |
88 | show_trace_log_lvl(struct task_struct *task, struct pt_regs *regs, | 88 | show_trace_log_lvl(struct task_struct *task, struct pt_regs *regs, |
89 | unsigned long *stack, char *log_lvl); | 89 | unsigned long *stack, unsigned long bp, char *log_lvl); |
90 | 90 | ||
91 | extern void | 91 | extern void |
92 | show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs, | 92 | show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs, |
93 | unsigned long *sp, char *log_lvl); | 93 | unsigned long *sp, unsigned long bp, char *log_lvl); |
94 | 94 | ||
95 | extern unsigned int code_bytes; | 95 | extern unsigned int code_bytes; |
96 | 96 | ||
diff --git a/arch/x86/include/asm/tsc.h b/arch/x86/include/asm/tsc.h index 1ca132fc0d03..83e2efd181e2 100644 --- a/arch/x86/include/asm/tsc.h +++ b/arch/x86/include/asm/tsc.h | |||
@@ -35,7 +35,7 @@ static inline cycles_t get_cycles(void) | |||
35 | static __always_inline cycles_t vget_cycles(void) | 35 | static __always_inline cycles_t vget_cycles(void) |
36 | { | 36 | { |
37 | /* | 37 | /* |
38 | * We only do VDSOs on TSC capable CPUs, so this shouldnt | 38 | * We only do VDSOs on TSC capable CPUs, so this shouldn't |
39 | * access boot_cpu_data (which is not VDSO-safe): | 39 | * access boot_cpu_data (which is not VDSO-safe): |
40 | */ | 40 | */ |
41 | #ifndef CONFIG_X86_TSC | 41 | #ifndef CONFIG_X86_TSC |
diff --git a/arch/x86/include/asm/xen/interface.h b/arch/x86/include/asm/xen/interface.h index 1c10c88ee4e1..5d4922ad4b9b 100644 --- a/arch/x86/include/asm/xen/interface.h +++ b/arch/x86/include/asm/xen/interface.h | |||
@@ -86,7 +86,7 @@ DEFINE_GUEST_HANDLE(void); | |||
86 | * The privilege level specifies which modes may enter a trap via a software | 86 | * The privilege level specifies which modes may enter a trap via a software |
87 | * interrupt. On x86/64, since rings 1 and 2 are unavailable, we allocate | 87 | * interrupt. On x86/64, since rings 1 and 2 are unavailable, we allocate |
88 | * privilege levels as follows: | 88 | * privilege levels as follows: |
89 | * Level == 0: Noone may enter | 89 | * Level == 0: No one may enter |
90 | * Level == 1: Kernel may enter | 90 | * Level == 1: Kernel may enter |
91 | * Level == 2: Kernel may enter | 91 | * Level == 2: Kernel may enter |
92 | * Level == 3: Everyone may enter | 92 | * Level == 3: Everyone may enter |