[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <46B27442.7010706@sun.com>
Date: Thu, 02 Aug 2007 17:18:10 -0700
From: Yinghai Lu <Yinghai.Lu@....COM>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Daniel Ritz <daniel.ritz-ml@...ssonline.ch>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Bjorn Helgaas <bjorn.helgaas@...com>,
linux-kernel@...r.kernel.org
Subject: Re: REGRESSION: serial_cs broken by 8250 changes
Andrew Morton wrote:
> On Thu, 02 Aug 2007 16:24:42 -0700
> Yinghai Lu <Yinghai.Lu@....COM> wrote:
>
>> Daniel Ritz wrote:
>>> commit 18a8bd949d6adb311ea816125ff65050df1f3f6e breaks serial_cs badly
>>> with an oops, completely killing PCMCIA.
>>>
>>> register_console() now calls console->early_setup(). which in case of
>>> 8250.c (the only user anyway) is serial8250_console_early_setup()
>>> which is __init, calling 8250_early.c:serial8250_find_port_for_earlycon()
>>> which is __init as well. boom.
>>>
>>> the changelog mentions SERIAL_PORT_DFNS removal which happens to be
>>> commit 7e92b4fc345f5b6f57585fbe5ffdb0f24d7c9b26. but this got reverted
>>> by commit 57d4810ea0d9ca58a7bcc1336607f0cede0a2abf. so i'd suggest to
>>> just revert the 8250 changes as well.
>>>
>>> rgds
>>> -daniel
>> Is there any flag or sign that init code has been released?
>
> Nope.
>
>> We could use that to prevent init code to be called after code is freed.
>
> If we can omit a function call without breaking anything then we shouldn't
> have been calling that function at all ;)
>
> It sounds like making serial8250_console_early_setup() and
> serial8250_find_port_for_earlycon() non-__init will fix this.
>
yes, together update_console_cmdline in kernel/printk.c
Daniel,
can you test that in your setup?
Thanks
Yinghai Lu
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists