From mboxrd@z Thu Jan 1 00:00:00 1970 From: Trilok Soni Subject: Re: ioremap() fail on physical address 0x0 in 3.4 kernel Date: Wed, 22 Aug 2012 12:16:08 +0530 Message-ID: <50348030.9080200@codeaurora.org> References: <50339AF6.1060601@codeaurora.org> <5033C428.2050607@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from wolverine02.qualcomm.com ([199.106.114.251]:15084 "EHLO wolverine02.qualcomm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751610Ab2HVGqO (ORCPT ); Wed, 22 Aug 2012 02:46:14 -0400 In-Reply-To: <5033C428.2050607@codeaurora.org> Sender: linux-arm-msm-owner@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org To: Laura Abbott Cc: Murali Nalajala , "linux-arm-msm@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , nico@linaro.org Hi Laura, On 8/21/2012 10:53 PM, Laura Abbott wrote: > > Looks like you are hitting the empty section gap: > > 0xfa200000-0xfa300000 1048576 pmd_empty_section_gap+0x0/0x3c ioremap > > pmd_empty_section_gap ends up with vm->phys_addr = 0x0 because it was > never set. This section isn't actually mapped so when searching for the > range in the static io map it finds this address and returns it but it > isn't actually a valid address to return. Perhaps ioremap should not > bother trying to re-use the static iomap if the address is zero and let > pmd_empty_section_gap use 0x0 as a dummy value? > > > > diff --git a/arch/arm/mm/ioremap.c b/arch/arm/mm/ioremap.c > --- a/arch/arm/mm/ioremap.c > +++ b/arch/arm/mm/ioremap.c > @@ -228,7 +228,8 @@ void __iomem * __arm_ioremap_pfn_caller(unsigned > long pfn, > */ > read_lock(&vmlist_lock); > for (area = vmlist; area; area = area->next) { > - if (!size || (sizeof(phys_addr_t) == 4 && pfn >= 0x100000)) > + if (!size || !pfn || (sizeof(phys_addr_t) == 4 && > + pfn >= 0x100000)) Thanks for the patch, but how about just checking pmd_none on such addresses and since there won't be any mapping created for such gaps? We need to check if this is fine for all, since I remember that Nico added these functions for the OMAP boot issue I guess. ---Trilok Soni -- -- Sent by a consultant of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.