Re: WARNING: at arch/x86/mm/ioremap.c:226

From: Suresh Siddha
Date: Mon Oct 20 2008 - 14:54:10 EST


On Mon, Oct 20, 2008 at 11:28:51AM -0700, Arjan van de Ven wrote:
> [ 16.914566] ck804xrom ck804xrom_init_one(): Unable to register resource 0x00000000ff000000-0x00000000ffffffff - kernel bug?
> [ 16.914575] resource map sanity check conflict: 0xff000000
> 0xffffffff 0xff780000 0xffffffff reserved
>
> [ 16.914636] [<c042c02c>] ioremap_nocache+0xd/0xf
> [ 16.914640] [<f87e4246>] ? init_ck804xrom+0x246/0x4c7 [ck804xrom]
> [ 16.914643] [<f87e4246>] init_ck804xrom+0x246/0x4c7 [ck804xrom]
>
> the init_ck804xrom driver seems to be requesting a bunch of memory with
> ioremap that crosses several resources...
> which is very bad.
>
> Can you sent the /proc/iomem file ?

drivers/mtd/maps/ck804xrom.c is hardcoding the address as:

window->phys = 0xff000000; /* 16MiB, hardcoded for now */

followed by:

ioremap_nocache(window->phys, window->size);

And later I see something like:

#if 1
/* The probe sequence run over the firmware hub lock
* registers sets them to 0x7 (no access).
* Probe at most the last 4MiB of the address space.
*/
if (map_top < 0xffc00000)
map_top = 0xffc00000;
#endif

If they are only probing the last 4MB, the above window mapping can also be
reduced accordingly.

Copying some folks.

thanks,
suresh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/