All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Wright <chrisw@sous-sol.org>
To: Gers Knorr <kraxel@suse.de>
Cc: virtualization@lists.osdl.org
Subject: Re: [patch] asm/i386/kernel/paravirt.c buildfix
Date: Mon, 8 Jan 2007 15:05:36 -0800	[thread overview]
Message-ID: <20070108230536.GC19575@sequoia.sous-sol.org> (raw)
In-Reply-To: <20070108200202.GB19575@sequoia.sous-sol.org>

* Chris Wright (chrisw@sous-sol.org) wrote:
> * Gers Knorr (kraxel@suse.de) 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
--

diff -r d1e90752bb71 include/asm-i386/paravirt.h
--- a/include/asm-i386/paravirt.h	Mon Jan 08 14:32:00 2007 -0500
+++ b/include/asm-i386/paravirt.h	Mon Jan 08 17:32:12 2007 -0500
@@ -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);

  reply	other threads:[~2007-01-08 23:05 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-08 15:28 [patch] asm/i386/kernel/paravirt.c buildfix Gers Knorr
2007-01-08 20:02 ` Chris Wright
2007-01-08 23:05   ` Chris Wright [this message]
2007-01-08 23:18 ` Rusty Russell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070108230536.GC19575@sequoia.sous-sol.org \
    --to=chrisw@sous-sol.org \
    --cc=kraxel@suse.de \
    --cc=virtualization@lists.osdl.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.