diff options
Diffstat (limited to 'lib/Kconfig.debug')
| -rw-r--r-- | lib/Kconfig.debug | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index bdee91d50a5b..20341480bb54 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
| @@ -1097,10 +1097,22 @@ config NOTIFIER_ERROR_INJECTION | |||
| 1097 | 1097 | ||
| 1098 | config CPU_NOTIFIER_ERROR_INJECT | 1098 | config CPU_NOTIFIER_ERROR_INJECT |
| 1099 | tristate "CPU notifier error injection module" | 1099 | tristate "CPU notifier error injection module" |
| 1100 | depends on HOTPLUG_CPU && DEBUG_KERNEL | 1100 | depends on HOTPLUG_CPU && NOTIFIER_ERROR_INJECTION |
| 1101 | help | 1101 | help |
| 1102 | This option provides a kernel module that can be used to test | 1102 | This option provides a kernel module that can be used to test |
| 1103 | the error handling of the cpu notifiers | 1103 | the error handling of the cpu notifiers by injecting artifical |
| 1104 | errors to CPU notifier chain callbacks. It is controlled through | ||
| 1105 | debugfs interface under /sys/kernel/debug/notifier-error-inject/cpu | ||
| 1106 | |||
| 1107 | If the notifier call chain should be failed with some events | ||
| 1108 | notified, write the error code to "actions/<notifier event>/error". | ||
| 1109 | |||
| 1110 | Example: Inject CPU offline error (-1 == -EPERM) | ||
| 1111 | |||
| 1112 | # cd /sys/kernel/debug/notifier-error-inject/cpu | ||
| 1113 | # echo -1 > actions/CPU_DOWN_PREPARE/error | ||
| 1114 | # echo 0 > /sys/devices/system/cpu/cpu1/online | ||
| 1115 | bash: echo: write error: Operation not permitted | ||
| 1104 | 1116 | ||
| 1105 | To compile this code as a module, choose M here: the module will | 1117 | To compile this code as a module, choose M here: the module will |
| 1106 | be called cpu-notifier-error-inject. | 1118 | be called cpu-notifier-error-inject. |
