WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [linux test] 2291: regressions - trouble: blocked/fail

To: Ian Campbell <Ian.Campbell@xxxxxxxxxx>
Subject: Re: [Xen-devel] [linux test] 2291: regressions - trouble: blocked/fail
From: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Date: Fri, 01 Oct 2010 09:40:11 -0700
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, "xen.org" <ian.jackson@xxxxxxxxxxxxx>
Delivery-date: Fri, 01 Oct 2010 09:41:00 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1285928400.16095.47074.camel@xxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <E1P1Ru9-0007cs-2L@xxxxxxxxxxxxxxxxxxx> <1285928400.16095.47074.camel@xxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.9) Gecko/20100921 Fedora/3.1.4-1.fc13 Lightning/1.0b3pre Thunderbird/3.1.4
 On 10/01/2010 03:20 AM, Ian Campbell wrote:
> On Thu, 2010-09-30 at 23:47 +0100, xen.org wrote:
>> flight 2291 linux real
>> http://www.chiark.greenend.org.uk/~xensrcts/logs/2291/
>>
>> Regressions :-(
>>
>> tests which did not succeed:
>>  build-amd64                   3 xen-build                  fail REGR. vs. 
>> 2279
>>  build-i386                    3 xen-build                  fail REGR. vs. 
>> 2279
>         In file included
>         from 
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/kernel/early_printk.c:18:
>         
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/include/asm/pgtable.h:
>  In function 'pgd_set_mm':
>         
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/include/asm/pgtable.h:32:
>  error: implicit declaration of function '__pfn_to_section'
>         
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/include/asm/pgtable.h:32:
>  warning: initialization makes pointer from integer without a cast
>         
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/include/asm/pgtable.h:32:
>  error: implicit declaration of function '__section_mem_map_addr'
>         
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/include/asm/pgtable.h:32:
>  error: invalid type argument of '->' (have 'long unsigned int')
>         
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/include/asm/pgtable.h:32:
>  error: bit-field '<anonymous>' width not an integer constant
>         
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/include/asm/pgtable.h:33:
>  warning: initialization makes pointer from integer without a cast
>         
> /home/osstest/build.2291.build-amd64/xen-unstable/linux-2.6-pvops.git/arch/x86/include/asm/pgtable.h:33:
>  error: invalid type argument of '->' (have 'long unsigned int')
>         make[7]: *** [arch/x86/kernel/early_printk.o] Error 1
>         make[6]: *** [arch/x86/kernel] Error 2
>         make[5]: *** [arch/x86] Error 2
>         make[5]: *** Waiting for unfinished jobs....
>
> I think this comes from b2464c422fb44275deeb5770b668351860f68e0e.
>

Yes.  Works for me, needless to say.  I'm guessing you have NUMA and/or
hotplug memory config options enabled which I don't?

> In my 32 bit environment I get this instead:
>           CC      arch/x86/kernel/early_printk.o
>         In file included from 
> /local/scratch/ianc/devel/kernels/linux-2.6/arch/x86/kernel/early_printk.c:18:
>         
> /local/scratch/ianc/devel/kernels/linux-2.6/arch/x86/include/asm/pgtable.h: 
> In function 'pgd_set_mm':
>         
> /local/scratch/ianc/devel/kernels/linux-2.6/arch/x86/include/asm/pgtable.h:32:
>  error: 'mem_map' undeclared (first use in this function)
>         
> /local/scratch/ianc/devel/kernels/linux-2.6/arch/x86/include/asm/pgtable.h:32:
>  error: (Each undeclared identifier is reported only once
>         
> /local/scratch/ianc/devel/kernels/linux-2.6/arch/x86/include/asm/pgtable.h:32:
>  error: for each function it appears in.)
>         
> /local/scratch/ianc/devel/kernels/linux-2.6/arch/x86/include/asm/pgtable.h:32:
>  error: bit-field '<anonymous>' width not an integer constant
>         make[2]: *** [arch/x86/kernel/early_printk.o] Error 1
>         make[1]: *** [arch/x86/kernel/early_printk.o] Error 2
>
> mem_map and __pfn_to_section are both in linux/mmzone.h so the patch
> below fixes my issue and I suspect fixes the original too. Possibly we
> should be including <linux/mm.h> instead of mmzone and mm_types?

I think there's a very strong risk of getting a cyclic #include
dependency.  Even mmzone.h is quite risky.

I think the simplest fix is to just pull them out of line.  They're
hardly performance critical.  The alternative would be to keep using
inlines but in the single file where each is used.  But I'd prefer to
keep them together as a matched pair for maintenance's sake.

    J

> diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h
> index c68e3ca..77a9766 100644
> --- a/arch/x86/include/asm/pgtable.h
> +++ b/arch/x86/include/asm/pgtable.h
> @@ -15,6 +15,7 @@
>        : (prot))
>  
>  #ifndef __ASSEMBLY__
> +#include <linux/mmzone.h>
>  #include <linux/mm_types.h>
>  
>  /*
>
>


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>