public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] external module: include apicdef.h for kernel < 2.6.21
@ 2007-12-15  2:45 Carlo Marcelo Arenas Belon
  2007-12-16 11:56 ` Avi Kivity
  0 siblings, 1 reply; 3+ messages in thread
From: Carlo Marcelo Arenas Belon @ 2007-12-15  2:45 UTC (permalink / raw)
  To: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

The following patch fixes building the kvm module for kernels older than
2.6.21 and which were missing an include to <asm/apicdef.h> in <asm/io_apic.h>
resulting in the following error :
    
  include/asm/io_apic.h:61: error: 'MAX_IO_APICS' undeclared here (not in a function)

Signed-off-by: Carlo Marcelo Arenas Belon <carenas-kLeDWSohozoJb6fo7hG9ng@public.gmane.org>
---
 kernel/external-module-compat.h |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/kernel/external-module-compat.h b/kernel/external-module-compat.h
index 1dc5a96..510bca4 100644
--- a/kernel/external-module-compat.h
+++ b/kernel/external-module-compat.h
@@ -537,8 +537,12 @@ out:
 #define CONFIG_HAS_IOMEM 1
 #endif
 
-/* Some kernels don't make dest_* available with some configs. */
+/* io_apic.h was missing this include in old versions of the headers */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,21)
+#include <asm/apicdef.h>
+#endif
 
+/* Some kernels don't make dest_* available with some configs. */
 #include <asm/io_apic.h>
 
 #ifndef dest_Fixed
-- 
1.5.2.5


-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] external module: include apicdef.h for kernel < 2.6.21
  2007-12-15  2:45 [PATCH] external module: include apicdef.h for kernel < 2.6.21 Carlo Marcelo Arenas Belon
@ 2007-12-16 11:56 ` Avi Kivity
       [not found]   ` <47651256.6050703-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 3+ messages in thread
From: Avi Kivity @ 2007-12-16 11:56 UTC (permalink / raw)
  To: Carlo Marcelo Arenas Belon; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

Carlo Marcelo Arenas Belon wrote:
> The following patch fixes building the kvm module for kernels older than
> 2.6.21 and which were missing an include to <asm/apicdef.h> in <asm/io_apic.h>
> resulting in the following error :
>     
>   include/asm/io_apic.h:61: error: 'MAX_IO_APICS' undeclared here (not in a function)
>
>   

Do all kernels/arches have this file?  maybe a #ifndef/#define/#endif 
sequence is better here.


-- 
error compiling committee.c: too many arguments to function


-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] external module: include apicdef.h for kernel < 2.6.21
       [not found]   ` <47651256.6050703-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
@ 2007-12-16 23:17     ` Carlo Marcelo Arenas Belon
  0 siblings, 0 replies; 3+ messages in thread
From: Carlo Marcelo Arenas Belon @ 2007-12-16 23:17 UTC (permalink / raw)
  To: Avi Kivity; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

On Sun, Dec 16, 2007 at 01:56:06PM +0200, Avi Kivity wrote:
> Carlo Marcelo Arenas Belon wrote:
> > The following patch fixes building the kvm module for kernels older than
> > 2.6.21 and which were missing an include to <asm/apicdef.h> in <asm/io_apic.h>
> > resulting in the following error :
> >     
> >   include/asm/io_apic.h:61: error: 'MAX_IO_APICS' undeclared here (not in a function)
> 
> Do all kernels/arches have this file?

apicdef.h has been around since 2.6.12 and was added to io_apic.h for 2.6.21
as can be seen in :

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=58a53b246b4aed95f3f93b45828c8d9f26b1cfcb

as for arches, it is only available in i386 and x86_64 (and in the merged x86
for 2.6.24) but the same is true for io_apic.h

> maybe a #ifndef/#define/#endif sequence is better here.

for 2.6.21 and 2.6.19 yes, but 2.6.16 needs also FIX_IO_APIC_BASE_0 and 
__fix_to_virt to build and therefore <asm/fixmap.h> (which then includes
apicdef.h)

I agree though that and #if KV/#include/#endif is not good as it doesn't
stress the fact that this problem is only visible for CONFIG_SMP=no for old
kernels so don't commit this one just yet as it is missing context and is only
the first out of 5 patches that I'd been testing for supporting all stable
gentoo kernels and that lead to the realization that 2.6.16 wouldn't work as I
reported before.

Carlo

-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-12-16 23:17 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-15  2:45 [PATCH] external module: include apicdef.h for kernel < 2.6.21 Carlo Marcelo Arenas Belon
2007-12-16 11:56 ` Avi Kivity
     [not found]   ` <47651256.6050703-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-12-16 23:17     ` Carlo Marcelo Arenas Belon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox