On 4/13/22 21:48, Rafael J. Wysocki wrote: > On Tue, Apr 12, 2022 at 1:39 AM Dmitry Osipenko > <dmitry.osipenko@xxxxxxxxxxxxx> wrote: >> >> Add sanity check which ensures that there are no two restart handlers >> registered using the same priority. This requirement will become mandatory >> once all drivers will be converted to the new API and such errors will be >> fixed. >> >> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@xxxxxxxxxxxxx> > > The first two patches in the series are fine with me and there's only > one minor nit regarding this one (below). > >> --- >> kernel/reboot.c | 15 +++++++++++++++ >> 1 file changed, 15 insertions(+) >> >> diff --git a/kernel/reboot.c b/kernel/reboot.c >> index ed4e6dfb7d44..acdae4e95061 100644 >> --- a/kernel/reboot.c >> +++ b/kernel/reboot.c >> @@ -182,6 +182,21 @@ static ATOMIC_NOTIFIER_HEAD(restart_handler_list); >> */ >> int register_restart_handler(struct notifier_block *nb) >> { >> + int ret; >> + >> + ret = atomic_notifier_chain_register_unique_prio(&restart_handler_list, nb); >> + if (ret != -EBUSY) >> + return ret; >> + >> + /* >> + * Handler must have unique priority. Otherwise call order is >> + * determined by registration order, which is unreliable. >> + * >> + * This requirement will become mandatory once all drivers >> + * will be converted to use new sys-off API. >> + */ >> + pr_err("failed to register restart handler using unique priority\n"); > > I would use pr_info() here, because this is not a substantial error AFAICS. It's indeed not a substantial error so far, but it will become substantial later on once only unique priorities will be allowed. The pr_warn() could be a good compromise here, pr_info() is too mild, IMO.