Skip to contentSkip to conversation

asm/i386/kernel/paravirt.c buildfix

PATCH In review Gers Knorr 3 participants 4 messages Jan 8, 2007

Subsystems (2)
lore
Share & tools
lore

Gers Knorr

author
#0 lore raw

PATCH 1/1 asm/i386/kernel/paravirt.c buildfix

asm/i386/kernel/paravirt.c buildfix.

drop apic_* duplicates which are defined in asm/paravirt.h

---
 arch/i386/kernel/paravirt.c |   14 --------------
 1 file changed, 14 deletions(-)
arch/i386/kernel/paravirt.c +0 -14
Index: paravirt-2.6.19-hg686/arch/i386/kernel/paravirt.c
===================================================================
@@ -693,20 +693,6 @@ void halt(void)
 }
 EXPORT_SYMBOL_GPL(halt);
 
-#ifdef CONFIG_X86_LOCAL_APIC
-void apic_write(unsigned long reg, unsigned long v)
-{
-	paravirt_ops.apic_write(reg,v);
-}
-EXPORT_SYMBOL_GPL(apic_write);
-
-unsigned long apic_read(unsigned long reg)
-{
-	return paravirt_ops.apic_read(reg);
-}
-EXPORT_SYMBOL_GPL(apic_read);
-#endif
-
 void __cpuid(unsigned int *eax, unsigned int *ebx,
 	     unsigned int *ecx, unsigned int *edx)
 {
#1 lore raw
Quoted 3 lines · * Gers Knorr ([email protected]) wrote:

asm/i386/kernel/paravirt.c buildfix.

drop apic_* duplicates which are defined in asm/paravirt.h

Thanks, but did you build test w/ smth like allmodconfig (paravirt_ops not being exported anymore means those inline wrappers can easily break)?

thanks,
-chris

#2 lore raw
Quoted 7 lines · * Chris Wright ([email protected]) wrote:
Quoted 3 lines · * Gers Knorr ([email protected]) wrote:

asm/i386/kernel/paravirt.c buildfix.

drop apic_* duplicates which are defined in asm/paravirt.h

Thanks, but did you build test w/ smth like allmodconfig (paravirt_ops not being exported anymore means those inline wrappers can easily break)?

OK, after some mucking about here's one that removes the issues with with pv allmodconfig.

thanks,
-chris
--

include/asm-i386/paravirt.h +21 -31
diff -r d1e90752bb71 include/asm-i386/paravirt.h
@@ -367,36 +367,6 @@ void __cpuid(unsigned int *eax, unsigned
 #define pmd_val(x)	paravirt_ops.pmd_val(x)
 #endif
 
-/* The paravirtualized I/O functions */
-static inline void slow_down_io(void) {
-	paravirt_ops.io_delay();
-#ifdef REALLY_SLOW_IO
-	paravirt_ops.io_delay();
-	paravirt_ops.io_delay();
-	paravirt_ops.io_delay();
-#endif
-}
-
-#ifdef CONFIG_X86_LOCAL_APIC
-/*
- * Basic functions accessing APICs.
- */
-static inline void apic_write(unsigned long reg, unsigned long v)
-{
-	paravirt_ops.apic_write(reg,v);
-}
-
-static inline void apic_write_atomic(unsigned long reg, unsigned long v)
-{
-	paravirt_ops.apic_write_atomic(reg,v);
-}
-
-static inline unsigned long apic_read(unsigned long reg)
-{
-	return paravirt_ops.apic_read(reg);
-}
-#endif
-
 static inline void paravirt_pagetable_setup_start(pgd_t *base)
 {
 	if (paravirt_ops.pagetable_setup_start)
@@ -495,13 +465,33 @@ void paravirt_irq_disable(void);
 void paravirt_irq_disable(void);
 void paravirt_irq_enable(void);
 void paravirt_const_udelay(unsigned long loops);
-void paravirt_io_delay(void);
 u64 paravirt_read_msr(unsigned int msr, int *err);
 int paravirt_write_msr(unsigned int msr, u64 val);
 u64 paravirt_read_tsc(void);
 void raw_safe_halt(void);
 void halt(void);
 void wbinvd(void);
+void paravirt_io_delay(void);
+static inline void slow_down_io(void) {
+	paravirt_io_delay();
+#ifdef REALLY_SLOW_IO
+	paravirt_io_delay();
+	paravirt_io_delay();
+	paravirt_io_delay();
+#endif
+}
+
+#ifdef CONFIG_X86_LOCAL_APIC
+/*
+ * Basic functions accessing APICs.
+ */
+void apic_write(unsigned long reg, unsigned long v);
+static inline void apic_write_atomic(unsigned long reg, unsigned long v)
+{
+	paravirt_ops.apic_write_atomic(reg,v);
+}
+unsigned long apic_read(unsigned long reg);
+#endif
 
 /* These will be unexported once raid6 is fixed... */
 void clts(void);
#3 lore raw
In reply to Gers Knorr
Quoted 3 lines · Gers Knorr

asm/i386/kernel/paravirt.c buildfix.

drop apic_* duplicates which are defined in asm/paravirt.h

How did this segment get dropped from the patch I sent?

The correct answer is to remove the header versions, as Chris did.

Thanks!
Rusty.