Re: [PATCH 5/7] PM: PM notifier error injection

From: Akinobu Mita
Date: Fri Jul 08 2011 - 11:56:20 EST


>> --- a/kernel/power/main.c
>> +++ b/kernel/power/main.c
>> @@ -42,6 +42,36 @@ int pm_notifier_call_chain(unsigned long val)
>>       return notifier_to_errno(ret);
>>  }
>>
>> +#ifdef CONFIG_PM_NOTIFIER_ERROR_INJECTION
>> +
>> +static struct err_inject_notifier_block err_inject_pm_notifier = {
>> +     .actions = {
>> +             { ERR_INJECT_NOTIFIER_ACTION(PM_HIBERNATION_PREPARE) },
>> +             { ERR_INJECT_NOTIFIER_ACTION(PM_SUSPEND_PREPARE) },
>> +             { ERR_INJECT_NOTIFIER_ACTION(PM_RESTORE_PREPARE) },
>> +             {}
>
> Why have you omitted the PM_POST_* actions?

Because the callbacks of PM_POST_* are not supposed to fail (i.e.
the return value of pm_notifier_call() is ignored).

>> --- a/lib/Kconfig.debug
>> +++ b/lib/Kconfig.debug
>> @@ -1043,6 +1043,14 @@ config CPU_NOTIFIER_ERROR_INJECTION
>>         # echo 0 > /sys/devices/system/cpu/cpu1/online
>>         bash: echo: write error: Operation not permitted
>>
>> +config PM_NOTIFIER_ERROR_INJECTION
>> +     bool "PM notifier error injection"
>> +     depends on PM_DEBUG && NOTIFIER_ERROR_INJECTION
>> +     help
>> +       This option provides the ability to inject artifical errors to
>> +       PM notifier chain callbacks.  It is controlled through debugfs
>> +       interface under /sys/kernel/debug/pm-notifier-error-inject/
>
> I'm not sure the help is necessary.  I think it should be selected
> automatically if both PM_DEBUG and NOTIFIER_ERROR_INJECTION are set.

OK, I'll try to tweak the option to be better.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/