linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: haojian.zhuang@linaro.org (Haojian Zhuang)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/2] tty: serial: remove __init on pl011 console ops
Date: Wed, 6 Feb 2013 20:31:34 +0800	[thread overview]
Message-ID: <CAD6h2NSpo74UXUgH2OJniW=wzkxGeshta05AGgCpn26SCUSjYg@mail.gmail.com> (raw)
In-Reply-To: <20130206115219.GE17833@n2100.arm.linux.org.uk>

On 6 February 2013 19:52, Russell King - ARM Linux
<linux@arm.linux.org.uk> wrote:
> On Wed, Feb 06, 2013 at 07:47:14PM +0800, Haojian Zhuang wrote:
>> If uart driver is probed defer, console_setup will be called later
>> after __init && __initdata sections destroyed. And amba_console isn't
>> defined in __init or __initdata section. So we needn't define
>> pl011_console_setup() && pl011_console_get_options() in __init section.
>
> It sounds like there's a deeper problem here - if this driver being
> deferred, why isn't it being retried after the pinctrl stuff gets
> its driver registered?
>
> We've had bugs in this deferred probing before, I wouldn't be surprised
> if there's more... and we should not be "fixing" drivers because of bugs
> elsewhere.

It retried if driver is being deferred. But those console setup
functions are released
since they're declared in __init section.

rest_init()
   --> creates kernel_init thread that could free __init section memory

deferred_probe_initicall() creates a workqueue that is used to retry
deferred probe
function.

I think that these two threads are competing.

Best Regards
Haojian

  reply	other threads:[~2013-02-06 12:31 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-06 11:47 [PATCH 1/2] tty: serial: remove __init on pl011 console ops Haojian Zhuang
2013-02-06 11:47 ` [PATCH 2/2] tty: serial: use module_init on pl011_init Haojian Zhuang
2013-02-06 17:17   ` Linus Walleij
2013-02-06 11:52 ` [PATCH 1/2] tty: serial: remove __init on pl011 console ops Russell King - ARM Linux
2013-02-06 12:31   ` Haojian Zhuang [this message]
2013-02-06 16:31     ` Linus Walleij
2013-02-06 16:38       ` Russell King - ARM Linux
2013-02-06 16:46         ` Linus Walleij
2013-02-09 17:22         ` Haojian Zhuang
2013-02-09 22:31           ` Grant Likely
2013-02-09 22:41             ` Russell King - ARM Linux
2013-02-10  3:31               ` Haojian Zhuang
2013-02-13 21:21                 ` Grant Likely
2013-02-13 21:04               ` Grant Likely
2013-02-13 22:52                 ` Russell King - ARM Linux
2013-02-13 23:04                   ` Grant Likely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAD6h2NSpo74UXUgH2OJniW=wzkxGeshta05AGgCpn26SCUSjYg@mail.gmail.com' \
    --to=haojian.zhuang@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).