treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / Documentation / fault-injection / provoke-crashes.rst
blob9279a3e122781e49b258c5c4096cb5f130db66d2
1 ===============
2 Provoke crashes
3 ===============
5 The lkdtm module provides an interface to crash or injure the kernel at
6 predefined crashpoints to evaluate the reliability of crash dumps obtained
7 using different dumping solutions. The module uses KPROBEs to instrument
8 crashing points, but can also crash the kernel directly without KRPOBE
9 support.
12 You can provide the way either through module arguments when inserting
13 the module, or through a debugfs interface.
15 Usage::
17         insmod lkdtm.ko [recur_count={>0}] cpoint_name=<> cpoint_type=<>
18                         [cpoint_count={>0}]
20 recur_count
21         Recursion level for the stack overflow test. Default is 10.
23 cpoint_name
24         Crash point where the kernel is to be crashed. It can be
25         one of INT_HARDWARE_ENTRY, INT_HW_IRQ_EN, INT_TASKLET_ENTRY,
26         FS_DEVRW, MEM_SWAPOUT, TIMERADD, SCSI_DISPATCH_CMD,
27         IDE_CORE_CP, DIRECT
29 cpoint_type
30         Indicates the action to be taken on hitting the crash point.
31         It can be one of PANIC, BUG, EXCEPTION, LOOP, OVERFLOW,
32         CORRUPT_STACK, UNALIGNED_LOAD_STORE_WRITE, OVERWRITE_ALLOCATION,
33         WRITE_AFTER_FREE,
35 cpoint_count
36         Indicates the number of times the crash point is to be hit
37         to trigger an action. The default is 10.
39 You can also induce failures by mounting debugfs and writing the type to
40 <mountpoint>/provoke-crash/<crashpoint>. E.g.::
42   mount -t debugfs debugfs /mnt
43   echo EXCEPTION > /mnt/provoke-crash/INT_HARDWARE_ENTRY
46 A special file is `DIRECT` which will induce the crash directly without
47 KPROBE instrumentation. This mode is the only one available when the module
48 is built on a kernel without KPROBEs support.