Re: [PATCH v4 2/7] arm64: Support restart through restart notifier call chain

Catalin Marinas
2014-07-14T15:08:23Z

On Mon, Jul 14, 2014 at 04:01:14PM +0100, Guenter Roeck wrote:
> On 07/14/2014 07:55 AM, Catalin Marinas wrote:
> > On Sun, Jul 13, 2014 at 04:30:26PM +0100, Guenter Roeck wrote:
> >> diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c
> >> index 43b7c34..b2da6d5 100644
> >> --- a/arch/arm64/kernel/process.c
> >> +++ b/arch/arm64/kernel/process.c
> >> @@ -174,6 +174,8 @@ void machine_restart(char *cmd)
> >> /* Now call the architecture specific reboot code. */
> >> if (arm_pm_restart)
> >> arm_pm_restart(reboot_mode, cmd);
> >> + else
> >> + kernel_restart_notify(cmd);
> >
> > There are couple of drivers specific to arm64, once they are converted
> > we can get rid of arm_pm_restart entirely here.
>
> I thought you wanted to keep exporting arm_pm_restart.

No, I just thought you don't want the restart mechanism implemented in
modules but the notifier registration still allows that, so I didn't
fully get the reasoning. But I agree on the race aspect.

> That logically implies
> that you want to have the ability to write new drivers which use it, which
> in turn implies that converting existing drivers would not make much sense.

If the new handler registration mechanism gives the functionality, I
don't see why we should keep arm_pm_restart around (for arm64 it's
easier since there aren't many drivers setting it).

--
Catalin