Re: [PATCH 1/7] paravirtualization: header and stubs for paravirtualizingcritical operations

From: Zachary Amsden
Date: Fri Nov 03 2006 - 15:35:33 EST


Andi Kleen wrote:
On Wednesday 01 November 2006 11:27, Rusty Russell wrote:
Create a paravirt.h header for all the critical operations which need
to be replaced with hypervisor calls, and include that instead of
defining native operations, when CONFIG_PARAVIRT.

Hmm, did this all ever compile in mainline? I had to do a few merges
and in the end i get

/home/lsrc/quilt/linux/kernel/spinlock.c: In function â_spin_lock_irqsaveâ:
include2/asm/spinlock.h:59: error: invalid 'asm': operand number missing after %
-letter
include2/asm/spinlock.h:59: error: invalid 'asm': operand number missing after %
-letter
include2/asm/spinlock.h:59: error: invalid 'asm': operand number missing after %
-letter
include2/asm/spinlock.h:59: error: invalid 'asm': operand number missing after %
-letter
include2/asm/spinlock.h:59: error: invalid 'asm': operand number missing after %
-letter
include2/asm/spinlock.h:59: error: invalid 'asm': operand number missing after %
-letter
include2/asm/spinlock.h:59: error: invalid 'asm': operand number missing after %
-letter
include2/asm/spinlock.h:59: error: invalid 'asm': operand number missing after %
-letter
{standard input}: Assembler messages:
{standard input}:593: Error: undefined symbol `paravirt_ops' in operation
{standard input}:593: Error: undefined symbol `PARAVIRT_irq_enable' in operation
{standard input}:605: Error: undefined symbol `paravirt_ops' in operation
{standard input}:605: Error: undefined symbol `PARAVIRT_irq_disable' in operatio
n

Not seeing that here (on 2.6.19-rc2-mm2 with gcc 4.0.2).

and lots of new warnings like

/home/lsrc/quilt/linux/arch/i386/kernel/traps.c: In function âset_intr_gateâ:
/home/lsrc/quilt/linux/arch/i386/kernel/traps.c:1165: warning: implicit declarat
ion of function â_set_gateâ
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/common.c: In function â_cpu_initâ:
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/common.c:754: warning: implicit decl
aration of function â__set_tss_desc'

Sounds like desc.h got reordered. Somewhere, there was a broken patch once that did this, I thought we fixed that.

/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c: In function âintel_mach
ine_checkâ:
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.eaxâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.ebxâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.ecxâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.edxâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.esiâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.ediâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.ebpâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.espâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.eflag
sâ may be used uninitialized in this function
/home/lsrc/quilt/linux/arch/i386/kernel/cpu/mcheck/p4.c:158: warning: âdbg.eipâ may be used uninitialized in this function

Those appear to be valid warnings, with or without paravirt, due to the tacky glued inline oddity of intel_get_extended_msrs.

Zach
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/