Re: [PATCH #repost] SCSI: megaraid, fix suspend/resume sections

From: James Bottomley
Date: Fri May 02 2008 - 10:56:26 EST


On Thu, 2008-05-01 at 15:30 -0700, Andrew Morton wrote:
> On Thu, 01 May 2008 17:05:59 -0500
> James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote:
>
> > On Thu, 2008-05-01 at 23:34 +0200, Jiri Slaby wrote:
> > > On 05/01/2008 11:23 PM, Andrew Morton wrote:
> > > > On Thu, 1 May 2008 17:56:02 +0200
> > > > Jiri Slaby <jirislaby@xxxxxxxxx> wrote:
> > > >
> > > >> megaraid_sas suspend and resume are inappropriatelly placed in
> > > >> __devinit section.
> > > >
> > > > That's a box-killer, isn't it?
> > >
> > > I think so -- the non-CONFIG_HOTPLUG ones.
> >
> > CONFIG_HOTPLUG is only settable to 'n' if you're CONFIG_EMBEDDED which
> > has a zero set intersection with the users of megaraid, so in practical
> > terms, there's no actual box it could kill.
>
> who suspends and resumes servers?

Well, IBM for one ... although you wouldn't have to try hard to convince
me that they do it just to annoy me.

> > this whole
> >
> > #if CONFIG_PM
> > define suspend resume
> > #else
> > set suspend resume methods to null
> > #endif
> >
> > Is completely analagous to what we used to do with CONFIG_HOTPLUG before
> > we had the __dev.* sectional annotations. Since the expanding
> > bureacracy is determined to keep the _dev.* sections
>
> ooh, that makes us sound really bad! ("since the server-obsessed
> embedded-hating bloatmonkeys..."?)

Well, since the __dev.* sections according to the embedded folks are
worth about a page possibly two, the __dev.* value to them is minimal
(particularly as a lot of them have hotplug anyway for their compact
flash, USB and the like).

> > in spite of the pain,
>
> What pain? Other people write the dang patches for you! Their main
> problem is getting them merged.

No, the problem is getting them reviewed. Since everyone seems to have
section mismatch fatigue they all seem to land on me.

> > could we not at least make the machinery do something vaguely
> > useful and expand it to confine the pm routines to sections which can be
> > discarded if CONFIG_PM is n?
>
> a) it would need to be discarded at link-time, ideally.

Yes, the same way the exit sections are: as linker discards. We also
have the mechanics for runtime discards which is useful for modules

> b) worth investigating. It might lead to lengthy chains of compilation
> warnings though.

Yes ... but if it was worth the effort to unify all the handrolled
CONFIG_HOTPLUG stuff, it should be worth it for all the handrolled
CONFIG_PM code.

James


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/