Re: [PATCH v7 03/20] reboot: Print error message if restart handler has duplicated priority

Dmitry Osipenko
2022-04-13T22:24:04Z

On 4/13/22 21:48, Rafael J. Wysocki wrote:
> On Tue, Apr 12, 2022 at 1:39 AM Dmitry Osipenko
> <dmitry.osipenko@collabora.com> 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@collabora.com>
>
> 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.