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/