mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
To: Paul Mundt <lethal@linux-sh.org>, linux-kernel@vger.kernel.org
Subject: Re: platform_driver's probe functions must not be located in .init.text
Date: Tue, 13 Jan 2009 07:42:44 +0100	[thread overview]
Message-ID: <20090113064244.GA23381@pengutronix.de> (raw)
In-Reply-To: <20090113031554.GA3671@linux-sh.org>

On Tue, Jan 13, 2009 at 12:15:55PM +0900, Paul Mundt wrote:
> On Mon, Jan 12, 2009 at 11:12:02PM +0100, Uwe Kleine-K?nig wrote:
> > Hello,
> > 
> > if the probe function of a platform_driver lives in .init.text (i.e. is
> > defined using __init) registering a device after the .init sections are
> > discarded results in an oops.  You can test that by doing
> > 
> > 	echo $drivername.$somevalidid > /sys/bus/platform/drivers/$drivername/unbind
> > 	echo $drivername.$somevalidid > /sys/bus/platform/drivers/$drivername/bind
> > 
> > As a reply to this mail I send 62 patches that fix this kind of error by
> > moving the respective probe functions to .devinit.text.
> > 
> None of these patches balance with __devexit, is that intentional?
For now, yes, it is.  

One reason is that my script to find errors doesn't trigger for that.

Another is that this is not that critical.  If the probe function is in
.init.text you can get an oops.  If remove is in .text it just occupies
RAM without being used (if HOTPLUG=n).  And if remove is in .exit.text
and is properly wrapped in __exit_p when assigning .remove everything is
fine, too, you just cannot remove a device.

Maybe I will address this in later series.

Best regards
Uwe

-- 
Pengutronix e.K.                              | Uwe Kleine-König            |
Industrial Linux Solutions                    | http://www.pengutronix.de/  |

      parent reply	other threads:[~2009-01-13  8:08 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-12 22:12 Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move acornfb's probe function to .devinit.text Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move am79c961's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move arcfb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move at91_ether's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move at91_wdt's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move bf54x-lq043's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move bfin-t350mcqb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move cfag12864bfb's " Uwe Kleine-König
2009-01-20  8:13   ` Miguel Ojeda
2009-01-20  9:29     ` Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move leds-clevo-mail's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move cobalt-lcd's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move corgi-keyboard's " Uwe Kleine-König
2009-01-13  6:20   ` Dmitry Torokhov
2009-01-12 22:24 ` [PATCH] move corgi-ssp's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move corgi-ts's " Uwe Kleine-König
2009-01-13  6:20   ` Dmitry Torokhov
2009-01-12 22:24 ` [PATCH] move efifb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move orion-ehci's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move epson1355fb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move sh_flctl's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move gbefb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move h1940-bt's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move h1940-leds's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move hgafb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move hitfb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move hp680-bl's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move hp-wmi's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move jazzsonic's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move jornada_ssp's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move ks8695_wdt's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move macsonic's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move meth's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move mmci-omap's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move mailbox's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move omap24xxcam's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move mailbox's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move omap_hdq's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move omap-keypad's " Uwe Kleine-König
2009-01-14  5:34   ` Dmitry Torokhov
2009-01-12 22:24 ` [PATCH] move omap_rng's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move omap_wdt's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move orion_nand's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move gen_nand's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move q40fb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move r8a66597_hcd's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move s3c241xfb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move sa11x0-fb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move flash's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move sb1250-mac's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move sgiseeq's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move sgivwfb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move sgiwd93's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move sharpsl-pm's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move sh_mobile_lcdc_fb's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move snd_powermac's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move snirm_53c710's " Uwe Kleine-König
2009-01-12 22:24 ` [PATCH] move spitz-keyboard's " Uwe Kleine-König
2009-01-14  5:34   ` Dmitry Torokhov
2009-01-12 22:24 ` [PATCH] move stk17ta8's " Uwe Kleine-König
2009-01-12 22:25 ` [PATCH] move omap_udc's " Uwe Kleine-König
2009-01-12 22:25 ` [PATCH] move vesafb's " Uwe Kleine-König
2009-01-12 22:25 ` [PATCH] move vfb's " Uwe Kleine-König
2009-01-12 22:25 ` [PATCH] move vga16fb's " Uwe Kleine-König
2009-01-12 22:25 ` [PATCH] move w100fb's " Uwe Kleine-König
2009-01-12 22:25 ` [PATCH] move wm8400-regulator's " Uwe Kleine-König
2009-01-13  9:57   ` Liam Girdwood
2009-01-13 11:39   ` Mark Brown
2009-01-12 22:25 ` [PATCH] move xilinx_spi's " Uwe Kleine-König
2009-01-12 22:25 ` [PATCH] move xtsonic's " Uwe Kleine-König
     [not found] ` <20090113031554.GA3671@linux-sh.org>
2009-01-13  6:42   ` Uwe Kleine-König [this message]

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=20090113064244.GA23381@pengutronix.de \
    --to=u.kleine-koenig@pengutronix.de \
    --cc=lethal@linux-sh.org \
    --cc=linux-kernel@vger.kernel.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

Powered by JetHome