diff options
author | Glauber de Oliveira Costa <gcosta@redhat.com> | 2008-01-30 07:31:12 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:31:12 -0500 |
commit | 6b68f01baa810e9f63fbf39e9d5c3ef1d94a966f (patch) | |
tree | dc7f50673d72677d24dbe9ac8217b832f8d5cb02 /arch/x86/kernel | |
parent | 6842ef0e85a9cc1295f3ef933a230f863b01eb0f (diff) |
x86: unify struct desc_ptr
This patch unifies struct desc_ptr between i386 and x86_64.
They can be expressed in the exact same way in C code, only
having to change the name of one of them. As Xgt_desc_struct
is ugly and big, this is the one that goes away.
There's also a padding field in i386, but it is not really
needed in the C structure definition.
Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r-- | arch/x86/kernel/asm-offsets_32.c | 5 | ||||
-rw-r--r-- | arch/x86/kernel/cpu/common.c | 2 | ||||
-rw-r--r-- | arch/x86/kernel/doublefault_32.c | 2 | ||||
-rw-r--r-- | arch/x86/kernel/efi_32.c | 4 | ||||
-rw-r--r-- | arch/x86/kernel/machine_kexec_32.c | 4 | ||||
-rw-r--r-- | arch/x86/kernel/reboot_32.c | 2 |
6 files changed, 9 insertions, 10 deletions
diff --git a/arch/x86/kernel/asm-offsets_32.c b/arch/x86/kernel/asm-offsets_32.c index 415313556708..afd84463b712 100644 --- a/arch/x86/kernel/asm-offsets_32.c +++ b/arch/x86/kernel/asm-offsets_32.c | |||
@@ -70,9 +70,8 @@ void foo(void) | |||
70 | OFFSET(TI_cpu, thread_info, cpu); | 70 | OFFSET(TI_cpu, thread_info, cpu); |
71 | BLANK(); | 71 | BLANK(); |
72 | 72 | ||
73 | OFFSET(GDS_size, Xgt_desc_struct, size); | 73 | OFFSET(GDS_size, desc_ptr, size); |
74 | OFFSET(GDS_address, Xgt_desc_struct, address); | 74 | OFFSET(GDS_address, desc_ptr, address); |
75 | OFFSET(GDS_pad, Xgt_desc_struct, pad); | ||
76 | BLANK(); | 75 | BLANK(); |
77 | 76 | ||
78 | OFFSET(PT_EBX, pt_regs, bx); | 77 | OFFSET(PT_EBX, pt_regs, bx); |
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c index 4f9e31912a25..69507ae8a65b 100644 --- a/arch/x86/kernel/cpu/common.c +++ b/arch/x86/kernel/cpu/common.c | |||
@@ -649,7 +649,7 @@ struct pt_regs * __devinit idle_regs(struct pt_regs *regs) | |||
649 | * it's on the real one. */ | 649 | * it's on the real one. */ |
650 | void switch_to_new_gdt(void) | 650 | void switch_to_new_gdt(void) |
651 | { | 651 | { |
652 | struct Xgt_desc_struct gdt_descr; | 652 | struct desc_ptr gdt_descr; |
653 | 653 | ||
654 | gdt_descr.address = (long)get_cpu_gdt_table(smp_processor_id()); | 654 | gdt_descr.address = (long)get_cpu_gdt_table(smp_processor_id()); |
655 | gdt_descr.size = GDT_SIZE - 1; | 655 | gdt_descr.size = GDT_SIZE - 1; |
diff --git a/arch/x86/kernel/doublefault_32.c b/arch/x86/kernel/doublefault_32.c index cc19a3ea403a..d16122a8e4eb 100644 --- a/arch/x86/kernel/doublefault_32.c +++ b/arch/x86/kernel/doublefault_32.c | |||
@@ -17,7 +17,7 @@ static unsigned long doublefault_stack[DOUBLEFAULT_STACKSIZE]; | |||
17 | 17 | ||
18 | static void doublefault_fn(void) | 18 | static void doublefault_fn(void) |
19 | { | 19 | { |
20 | struct Xgt_desc_struct gdt_desc = {0, 0}; | 20 | struct desc_ptr gdt_desc = {0, 0}; |
21 | unsigned long gdt, tss; | 21 | unsigned long gdt, tss; |
22 | 22 | ||
23 | store_gdt(&gdt_desc); | 23 | store_gdt(&gdt_desc); |
diff --git a/arch/x86/kernel/efi_32.c b/arch/x86/kernel/efi_32.c index e2be78f49399..863e8926f2bb 100644 --- a/arch/x86/kernel/efi_32.c +++ b/arch/x86/kernel/efi_32.c | |||
@@ -69,7 +69,7 @@ static void efi_call_phys_prelog(void) __acquires(efi_rt_lock) | |||
69 | { | 69 | { |
70 | unsigned long cr4; | 70 | unsigned long cr4; |
71 | unsigned long temp; | 71 | unsigned long temp; |
72 | struct Xgt_desc_struct gdt_descr; | 72 | struct desc_ptr gdt_descr; |
73 | 73 | ||
74 | spin_lock(&efi_rt_lock); | 74 | spin_lock(&efi_rt_lock); |
75 | local_irq_save(efi_rt_eflags); | 75 | local_irq_save(efi_rt_eflags); |
@@ -111,7 +111,7 @@ static void efi_call_phys_prelog(void) __acquires(efi_rt_lock) | |||
111 | static void efi_call_phys_epilog(void) __releases(efi_rt_lock) | 111 | static void efi_call_phys_epilog(void) __releases(efi_rt_lock) |
112 | { | 112 | { |
113 | unsigned long cr4; | 113 | unsigned long cr4; |
114 | struct Xgt_desc_struct gdt_descr; | 114 | struct desc_ptr gdt_descr; |
115 | 115 | ||
116 | gdt_descr.address = (unsigned long)get_cpu_gdt_table(0); | 116 | gdt_descr.address = (unsigned long)get_cpu_gdt_table(0); |
117 | gdt_descr.size = GDT_SIZE - 1; | 117 | gdt_descr.size = GDT_SIZE - 1; |
diff --git a/arch/x86/kernel/machine_kexec_32.c b/arch/x86/kernel/machine_kexec_32.c index 11b935f4f886..c1cfd60639d4 100644 --- a/arch/x86/kernel/machine_kexec_32.c +++ b/arch/x86/kernel/machine_kexec_32.c | |||
@@ -32,7 +32,7 @@ static u32 kexec_pte1[1024] PAGE_ALIGNED; | |||
32 | 32 | ||
33 | static void set_idt(void *newidt, __u16 limit) | 33 | static void set_idt(void *newidt, __u16 limit) |
34 | { | 34 | { |
35 | struct Xgt_desc_struct curidt; | 35 | struct desc_ptr curidt; |
36 | 36 | ||
37 | /* ia32 supports unaliged loads & stores */ | 37 | /* ia32 supports unaliged loads & stores */ |
38 | curidt.size = limit; | 38 | curidt.size = limit; |
@@ -44,7 +44,7 @@ static void set_idt(void *newidt, __u16 limit) | |||
44 | 44 | ||
45 | static void set_gdt(void *newgdt, __u16 limit) | 45 | static void set_gdt(void *newgdt, __u16 limit) |
46 | { | 46 | { |
47 | struct Xgt_desc_struct curgdt; | 47 | struct desc_ptr curgdt; |
48 | 48 | ||
49 | /* ia32 supports unaligned loads & stores */ | 49 | /* ia32 supports unaligned loads & stores */ |
50 | curgdt.size = limit; | 50 | curgdt.size = limit; |
diff --git a/arch/x86/kernel/reboot_32.c b/arch/x86/kernel/reboot_32.c index bb1a0f889c5e..c3376fae639d 100644 --- a/arch/x86/kernel/reboot_32.c +++ b/arch/x86/kernel/reboot_32.c | |||
@@ -161,7 +161,7 @@ real_mode_gdt_entries [3] = | |||
161 | 0x000092000100ffffULL /* 16-bit real-mode 64k data at 0x00000100 */ | 161 | 0x000092000100ffffULL /* 16-bit real-mode 64k data at 0x00000100 */ |
162 | }; | 162 | }; |
163 | 163 | ||
164 | static struct Xgt_desc_struct | 164 | static struct desc_ptr |
165 | real_mode_gdt = { sizeof (real_mode_gdt_entries) - 1, (long)real_mode_gdt_entries }, | 165 | real_mode_gdt = { sizeof (real_mode_gdt_entries) - 1, (long)real_mode_gdt_entries }, |
166 | real_mode_idt = { 0x3ff, 0 }, | 166 | real_mode_idt = { 0x3ff, 0 }, |
167 | no_idt = { 0, 0 }; | 167 | no_idt = { 0, 0 }; |