Re: Usage of restart_handler in pwrseq_emmc

Guenter Roeck
2015-06-02T16:42:51Z

On 06/02/2015 08:29 AM, Heiko Stübner wrote:
> Hi,
>
> I'm confused by the pwrseq-emmc registering a restart_handler for resetting an
> emmc in a panic-reboot case at priority 129 to "schedules it just before
> system reboot".
>
>>From what I remember from the restart-handler discussion the actuall usage is
> traversing the ordered list until one registered handler sucessfully restarts
> the system and not to have arbitary actions in there not related to the actual
> restart process?
>
> The actual documentation in kernel/reboot.c supports this assumption,
> describing register_restart_handler as "Register function to be called to
> reset the system".
>
>
> Additionally, 128 isn't even _the_ priority to reboot the system as described
> above and some drivers use higher priorities per default, see in
> drivers/power/reset arm-versatile-reboot.c; at91-reset.c; rmobile-reset.c and
> some more.
>
>
> So I guess this should use some other mechanism (reboot notifier) instead of
> restart_handlers?
>

Looks like it. Assuming that a restart handler with priority 129 will always
be executed is a bad idea, and having it do anything but restart the system
is an even worse idea and is really asking for trouble.

Guenter