mirror of
https://github.com/torvalds/linux.git
synced 2024-12-18 00:53:40 +00:00
[PATCH] x86: bogus tls from gdt
The per-CPU initialization code is copying in bogus data into thread->tls_array. Note that it copies &per_cpu(cpu_gdt_table, cpu), not &per_cpu(cpu_gdt_table, cpu)[GDT_ENTRY_TLS_MIN). That is totally broken and unnecessary. Make the initialization explicitly NULL. Signed-off-by: Zachary Amsden <zach@vmware.com> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
9f40a72a7e
commit
72e12b76fe
@ -607,12 +607,6 @@ void __devinit cpu_init(void)
|
||||
cpu_gdt_descr[cpu].address =
|
||||
(unsigned long)&per_cpu(cpu_gdt_table, cpu);
|
||||
|
||||
/*
|
||||
* Set up the per-thread TLS descriptor cache:
|
||||
*/
|
||||
memcpy(thread->tls_array, &per_cpu(cpu_gdt_table, cpu),
|
||||
GDT_ENTRY_TLS_ENTRIES * 8);
|
||||
|
||||
load_gdt(&cpu_gdt_descr[cpu]);
|
||||
load_idt(&idt_descr);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user