From patchwork Mon Sep 13 04:14:15 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yinghai Lu X-Patchwork-Id: 64572 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from bilbo.ozlabs.org (localhost [127.0.0.1]) by ozlabs.org (Postfix) with ESMTP id 7E2BB1007E7 for ; Mon, 13 Sep 2010 15:00:39 +1000 (EST) X-Greylist: delayed 2630 seconds by postgrey-1.32 at bilbo; Mon, 13 Sep 2010 15:00:31 EST Received: from rcsinet14.oracle.com (rcsinet14.oracle.com [148.87.113.126]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "rcsinet14.oracle.com", Issuer "VeriSign Trust Network" (verified OK)) by ozlabs.org (Postfix) with ESMTPS id 25243B6F14 for ; Mon, 13 Sep 2010 15:00:29 +1000 (EST) Received: from rcsinet10.oracle.com (rcsinet10.oracle.com [148.87.113.121]) by rcsinet14.oracle.com (Sentrion-MP-4.0.0/Sentrion-MP-4.0.0) with ESMTP id o8D4GfPS011411 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Mon, 13 Sep 2010 04:16:41 GMT Received: from rcsinet13.oracle.com (rcsinet13.oracle.com [148.87.113.125]) by rcsinet10.oracle.com (Switch-3.4.2/Switch-3.4.2) with ESMTP id o8D4GClf032482 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 13 Sep 2010 04:16:14 GMT Received: from acsmt353.oracle.com (acsmt353.oracle.com [141.146.40.153]) by rcsinet13.oracle.com (Switch-3.4.2/Switch-3.4.1) with ESMTP id o8CIrhs7018854; Mon, 13 Sep 2010 04:16:12 GMT Received: from abhmt001.oracle.com by acsmt354.oracle.com with ESMTP id 587805121284351254; Sun, 12 Sep 2010 21:14:14 -0700 Received: from [192.168.101.11] (/75.62.234.161) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sun, 12 Sep 2010 21:14:14 -0700 Message-ID: <4C8DA517.9000603@kernel.org> Date: Sun, 12 Sep 2010 21:14:15 -0700 From: Yinghai Lu User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.11) Gecko/20100714 SUSE/3.0.6 Thunderbird/3.0.6 MIME-Version: 1.0 To: Stephen Rothwell , Ingo Molnar Subject: Re: linux-next: build warnings after merge of the final tree (tip treee related) References: <20100913132721.5a02cfbc.sfr@canb.auug.org.au> In-Reply-To: <20100913132721.5a02cfbc.sfr@canb.auug.org.au> Cc: Peter Zijlstra , linux-kernel@vger.kernel.org, linux-next@vger.kernel.org, "H. Peter Anvin" , Thomas Gleixner , ppc-dev X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org On 09/12/2010 08:27 PM, Stephen Rothwell wrote: > Hi all, > > After merging the scsi-post-merge tree, today's linux-next build (powerpc > allnoconfig, i386 defconfig and others) produced these warnings (I build > with CONFIG_DEBUG_SECTION_MISMATCH=y): > > WARNING: mm/built-in.o(.text+0x25910): Section mismatch in reference from the function memblock_find_in_range() to the function .init.text:memblock_find_base() > The function memblock_find_in_range() references > the function __init memblock_find_base(). > This is often because memblock_find_in_range lacks a __init > annotation or the annotation of memblock_find_base is wrong. please check it, and it should get into core/memblock branch. Thanks Yinghai [PATCH] memblock: Fix section mismatch warning for arches that use memblock other than x86 Reported-by: Stephen Rothwell Signed-off-by: Yinghai Lu --- mm/memblock.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) Index: linux-2.6/mm/memblock.c =================================================================== --- linux-2.6.orig/mm/memblock.c +++ linux-2.6/mm/memblock.c @@ -125,8 +125,8 @@ static phys_addr_t __init memblock_find_ return MEMBLOCK_ERROR; } -static phys_addr_t __init memblock_find_base(phys_addr_t size, phys_addr_t align, - phys_addr_t start, phys_addr_t end) +static phys_addr_t __init_memblock memblock_find_base(phys_addr_t size, + phys_addr_t align, phys_addr_t start, phys_addr_t end) { long i; @@ -439,12 +439,12 @@ long __init_memblock memblock_remove(phy return __memblock_remove(&memblock.memory, base, size); } -long __init memblock_free(phys_addr_t base, phys_addr_t size) +long __init_memblock memblock_free(phys_addr_t base, phys_addr_t size) { return __memblock_remove(&memblock.reserved, base, size); } -long __init memblock_reserve(phys_addr_t base, phys_addr_t size) +long __init_memblock memblock_reserve(phys_addr_t base, phys_addr_t size) { struct memblock_type *_rgn = &memblock.reserved; @@ -693,7 +693,7 @@ int __init_memblock memblock_is_region_r } -void __init memblock_set_current_limit(phys_addr_t limit) +void __init_memblock memblock_set_current_limit(phys_addr_t limit) { memblock.current_limit = limit; }