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
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to