[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140714162637.GA2826@roeck-us.net>
Date: Mon, 14 Jul 2014 09:26:37 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Catalin Marinas <catalin.marinas@....com>
Cc: "linux-watchdog@...r.kernel.org" <linux-watchdog@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
Wim Van Sebroeck <wim@...ana.be>,
Maxime Ripard <maxime.ripard@...e-electrons.com>,
Will Deacon <Will.Deacon@....com>,
Arnd Bergmann <arnd@...db.de>,
Heiko Stuebner <heiko@...ech.de>,
Russell King <linux@....linux.org.uk>,
Jonas Jensen <jonas.jensen@...il.com>,
Randy Dunlap <rdunlap@...radead.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Steven Rostedt <rostedt@...dmis.org>,
Ingo Molnar <mingo@...nel.org>,
Dmitry Eremin-Solenikov <dbaryshkov@...il.com>,
David Woodhouse <dwmw2@...radead.org>,
Tomasz Figa <t.figa@...sung.com>,
"linux-doc@...r.kernel.org" <linux-doc@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v4 7/7] arm/arm64: Unexport restart handlers
On Mon, Jul 14, 2014 at 04:09:09PM +0100, Catalin Marinas wrote:
> On Mon, Jul 14, 2014 at 03:39:38PM +0100, Guenter Roeck wrote:
> > On 07/14/2014 07:22 AM, Catalin Marinas wrote:
> > > On Sun, Jul 13, 2014 at 04:30:31PM +0100, Guenter Roeck wrote:
> > >> Implementing a restart handler in a module don't make sense
> > >> as there would be no guarantee that the module is loaded when
> > >> a restart is needed. Unexport arm_pm_restart to ensure that
> > >> no one gets the idea to do it anyway.
> > >>
> > >> Signed-off-by: Guenter Roeck <linux@...ck-us.net>
> > >> ---
> > >> v4: No change
> > >> v3: No change
> > >> v2: No change
> > >>
> > >> arch/arm/kernel/process.c | 1 -
> > >> arch/arm64/kernel/process.c | 1 -
> > >> 2 files changed, 2 deletions(-)
> > >>
> > >> diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
> > >> index 5d191e3..25c7f00 100644
> > >> --- a/arch/arm/kernel/process.c
> > >> +++ b/arch/arm/kernel/process.c
> > >> @@ -125,7 +125,6 @@ void (*pm_power_off)(void);
> > >> EXPORT_SYMBOL(pm_power_off);
> > >>
> > >> void (*arm_pm_restart)(enum reboot_mode reboot_mode, const char *cmd) = null_restart;
> > >> -EXPORT_SYMBOL_GPL(arm_pm_restart);
> > >
> > > Unless I miss something, how is this different from registering a
> > > restart notifier from a module (blocking_notifier_chain_register is
> > > exported)?
> >
> > A notifier can be unregistered safely, and more than one notifier call
> > is supported. If there is more than one driver setting arm_pm_restart,
> > the first one to unregister will clear the pointer. Using the notifier
> > is cleaner and not architecture dependent. One might argue that setting
> > module external function pointers from module code isn't exactly clean
> > coding.
>
> I agree.
>
> > Anyway, this patch is not relevant for the series. If you prefer to have
> > the function exported, and keep using it for arm drivers loaded as modules,
> > be my guest, and I'll be more than happy drop it. I'll take your comment
> > as a hint _not_ to convert existing code to use the notifier after the
> > series is accepted. Cool, as I hate wasting my time.
>
> No, it's actually the opposite ;) (and I would go further and remove
> arm_pm_restart entirely for arm64).
>
Ah, sorry, I misunderstood. As mentioned above, I had planned to submit
patches to do just that after the initial series has been accepted.
Guess I can start with arm64 to keep things simple.
Thanks,
Guenter
--
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