All of lore.kernel.org
 help / color / mirror / Atom feed
* 42c9c06bec x86: ACPI: use ioremap_early() instead of __va()/__pa()
@ 2008-01-18 16:45 Johannes Weiner
  0 siblings, 0 replies; only message in thread
From: Johannes Weiner @ 2008-01-18 16:45 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: Linux Kernel Mailing List

Hi Ingo,

with the commit

	42c9c06bec2f48002d5b6573c8700461120070a9
	x86: ACPI: use ioremap_early() instead of __va()/__pa()

you made __acpi_map_table(), which is non-__init, call early_ioremap()
which is __init on 64bit (init_64.c) but non-__init on 32bit
(ioremap_32.c).  This results in section mismatches on 32bit.

The version I have here is v2.6.24-rc8-725-g0f80375.

I had a look into ioremap_32.c and as it seems no __init function should
be called at all in the callpath down from early_ioremap() after the
__init sections are tossed out; but it is decided during runtime with
the check of after_paging_init and so the illegal references still
exist.

What is the solution here?  I have not a real clue of the code, but
perhaps we can make early_ioremap REALLY __init only and use something
different from non-init code?

	Hannes

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-01-18 16:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-01-18 16:45 42c9c06bec x86: ACPI: use ioremap_early() instead of __va()/__pa() Johannes Weiner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.