Messages in this thread |  | | Date | Wed, 10 Sep 2008 09:49:21 -0700 | | From | Jeremy Fitzhardinge <> | | Subject | Re: [PATCH 6 of 7] x86: use early_ioremap in __acpi_map_table |
| |
Ingo Molnar wrote: >> So i'd suggest a different, more carful approach: keep the new code >> you wrote, but print a WARN()ing if prev_map is not unmapped yet when >> the next mapping is acquired. That way the ACPI code can be fixed >> gradually and without breaking existing functionality. >> > > ok, i stuck in your patches into tip/master today and -tip testing > quickly found an early-ioremap leak: > > [ 36.625100] calling check_early_ioremap_leak+0x0/0x3d > [ 36.630253] ------------[ cut here ]------------ > [ 36.634884] WARNING: at arch/x86/mm/ioremap.c:577 check_early_ioremap_leak+0x28/0x3d() > [ 36.642811] Debug warning: early ioremap leak of 1 areas detected. > > find the full log below with ioremap-leak-tracing turned on. I've > excluded these commits for now from tip/master. >
Yes, that leak is expected, unfortunately. __acpi_map_table() has no corresponding unmap, and only maintains one mapping. So it will leak its last mapping when it switches over from using __acpi_map_table() to ioremap().
So, yes, its ugly, but its guaranteed to be a single leaked mapping. But I'm not sure what the best approach to deal with it is.
(All those other backtraces are just informational, right?)
J
|  |