* warnings in rc4-mm2
@ 2006-11-02 23:25 Andrew Morton
2006-11-05 5:56 ` Rusty Russell
0 siblings, 1 reply; 2+ messages in thread
From: Andrew Morton @ 2006-11-02 23:25 UTC (permalink / raw)
To: Rusty Russell; +Cc: virtualization@lists.osdl.org
i386 allmodconfig
arch/i386/power/cpu.c: In function '__save_processor_state':
arch/i386/power/cpu.c:29: warning: passing argument 1 of 'paravirt_ops.store_gdt' from incompatible pointer type
arch/i386/power/cpu.c:30: warning: passing argument 1 of 'paravirt_ops.store_idt' from incompatible pointer type
arch/i386/power/cpu.c: In function '__restore_processor_state':
arch/i386/power/cpu.c:102: warning: passing argument 1 of 'paravirt_ops.load_gdt' from incompatible pointer type
arch/i386/power/cpu.c:103: warning: passing argument 1 of 'paravirt_ops.load_idt' from incompatible pointer type
arch/i386/kernel/paravirt.c:481: warning: initialization from incompatible pointer type
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: warnings in rc4-mm2
2006-11-02 23:25 warnings in rc4-mm2 Andrew Morton
@ 2006-11-05 5:56 ` Rusty Russell
0 siblings, 0 replies; 2+ messages in thread
From: Rusty Russell @ 2006-11-05 5:56 UTC (permalink / raw)
To: Andrew Morton; +Cc: virtualization@lists.osdl.org, Pavel Machek
On Thu, 2006-11-02 at 15:25 -0800, Andrew Morton wrote:
> i386 allmodconfig
>
> arch/i386/power/cpu.c: In function '__save_processor_state':
> arch/i386/power/cpu.c:29: warning: passing argument 1 of 'paravirt_ops.store_gdt' from incompatible pointer type
> arch/i386/power/cpu.c:30: warning: passing argument 1 of 'paravirt_ops.store_idt' from incompatible pointer type
> arch/i386/power/cpu.c: In function '__restore_processor_state':
> arch/i386/power/cpu.c:102: warning: passing argument 1 of 'paravirt_ops.load_gdt' from incompatible pointer type
> arch/i386/power/cpu.c:103: warning: passing argument 1 of 'paravirt_ops.load_idt' from incompatible pointer type
> arch/i386/kernel/paravirt.c:481: warning: initialization from incompatible pointer type
Thanks for the reminder!
The previous store_gdt() was a macro, with CONFIG_PARAVIRT we have
typechecking that the arg is a struct Xgt_desc_struct *. When I looked
at changing "struct saved_context" to use that struct, I realized that
the padding was in a different place: will changing it be a
compatibility issue?
Rusty.
With CONFIG_PARAVIRT enabled, store_gdt/store_idt etc are actual
functions which expect a struct Xgt_desc_struct *. Make saved_context
conform rather than using manually-assembled GDT.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/dontdiff --minimal linux-2.6.19-rc4-mm2/include/asm-i386/suspend.h working-2.6.19-rc4-mm2-warnings/include/asm-i386/suspend.h
--- linux-2.6.19-rc4-mm2/include/asm-i386/suspend.h 2006-11-05 15:35:56.000000000 +1100
+++ working-2.6.19-rc4-mm2-warnings/include/asm-i386/suspend.h 2006-11-05 16:40:40.000000000 +1100
@@ -12,12 +12,8 @@ static inline int arch_prepare_suspend(v
struct saved_context {
u16 es, fs, gs, ss;
unsigned long cr0, cr2, cr3, cr4;
- u16 gdt_pad;
- u16 gdt_limit;
- unsigned long gdt_base;
- u16 idt_pad;
- u16 idt_limit;
- unsigned long idt_base;
+ struct Xgt_desc_struct gdt;
+ struct Xgt_desc_struct idt;
u16 ldt;
u16 tss;
unsigned long tr;
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/dontdiff --minimal linux-2.6.19-rc4-mm2/arch/i386/power/cpu.c working-2.6.19-rc4-mm2-warnings/arch/i386/power/cpu.c
--- linux-2.6.19-rc4-mm2/arch/i386/power/cpu.c 2006-09-22 15:35:56.000000000 +1000
+++ working-2.6.19-rc4-mm2-warnings/arch/i386/power/cpu.c 2006-11-05 16:42:52.000000000 +1100
@@ -26,8 +26,8 @@ void __save_processor_state(struct saved
/*
* descriptor tables
*/
- store_gdt(&ctxt->gdt_limit);
- store_idt(&ctxt->idt_limit);
+ store_gdt(&ctxt->gdt);
+ store_idt(&ctxt->idt);
store_tr(ctxt->tr);
/*
@@ -99,8 +99,8 @@ void __restore_processor_state(struct sa
* now restore the descriptor tables to their proper values
* ltr is done i fix_processor_context().
*/
- load_gdt(&ctxt->gdt_limit);
- load_idt(&ctxt->idt_limit);
+ load_gdt(&ctxt->gdt);
+ load_idt(&ctxt->idt);
/*
* segment registers
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-11-05 5:56 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-11-02 23:25 warnings in rc4-mm2 Andrew Morton
2006-11-05 5:56 ` Rusty Russell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).