[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070802163547.39f41af1.akpm@linux-foundation.org>
Date: Thu, 2 Aug 2007 16:35:47 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Yinghai.Lu@....COM
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
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.
-
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