1f08c3bdfSopenharmony_ci#!/bin/sh -xe
2f08c3bdfSopenharmony_ci
3f08c3bdfSopenharmony_ciconf=${1}; shift
4f08c3bdfSopenharmony_citest=${1}
5f08c3bdfSopenharmony_cicrasher=crasher
6f08c3bdfSopenharmony_cilkdtm=lkdtm
7f08c3bdfSopenharmony_ci
8f08c3bdfSopenharmony_ci. "${conf}"
9f08c3bdfSopenharmony_ci
10f08c3bdfSopenharmony_cicase "${test}" in
11f08c3bdfSopenharmony_ci
12f08c3bdfSopenharmony_ci	"KEXEC-L")
13f08c3bdfSopenharmony_ci                kexec -l /boot/vmlinuz --initrd=/boot/initrd \
14f08c3bdfSopenharmony_ci                 --append="$(cat /proc/cmdline)"
15f08c3bdfSopenharmony_ci                sleep 10
16f08c3bdfSopenharmony_ci                kexec -e
17f08c3bdfSopenharmony_ci                ;;
18f08c3bdfSopenharmony_ci        "MNS")
19f08c3bdfSopenharmony_ci                echo "Not implemented"
20f08c3bdfSopenharmony_ci                ;;
21f08c3bdfSopenharmony_ci
22f08c3bdfSopenharmony_ci        "MNN")
23f08c3bdfSopenharmony_ci                echo "Not implemented"
24f08c3bdfSopenharmony_ci                ;;
25f08c3bdfSopenharmony_ci
26f08c3bdfSopenharmony_ci        "MCS")
27f08c3bdfSopenharmony_ci                echo "Not implemented"
28f08c3bdfSopenharmony_ci                ;;
29f08c3bdfSopenharmony_ci
30f08c3bdfSopenharmony_ci        "MCN")
31f08c3bdfSopenharmony_ci                echo "Not implemented"
32f08c3bdfSopenharmony_ci                ;;
33f08c3bdfSopenharmony_ci
34f08c3bdfSopenharmony_ci        "MCF")
35f08c3bdfSopenharmony_ci                echo "Not implemented"
36f08c3bdfSopenharmony_ci                ;;
37f08c3bdfSopenharmony_ci
38f08c3bdfSopenharmony_ci	"ACS")
39f08c3bdfSopenharmony_ci		echo c >/proc/sysrq-trigger
40f08c3bdfSopenharmony_ci		;;
41f08c3bdfSopenharmony_ci
42f08c3bdfSopenharmony_ci	"ACP")
43f08c3bdfSopenharmony_ci		# Panic test 0 in crasher module: panic()
44f08c3bdfSopenharmony_ci		insmod "${crasher}"/crasher.ko
45f08c3bdfSopenharmony_ci		echo 0 >/proc/crasher
46f08c3bdfSopenharmony_ci		;;
47f08c3bdfSopenharmony_ci
48f08c3bdfSopenharmony_ci	"ACB")
49f08c3bdfSopenharmony_ci		# Panic test 1 in crasher module: BUG()
50f08c3bdfSopenharmony_ci		insmod "${crasher}"/crasher.ko
51f08c3bdfSopenharmony_ci		echo 1 >/proc/crasher
52f08c3bdfSopenharmony_ci		;;
53f08c3bdfSopenharmony_ci
54f08c3bdfSopenharmony_ci	"ACE")
55f08c3bdfSopenharmony_ci		# Panic test 2 in crasher module: panic_on_oops
56f08c3bdfSopenharmony_ci		insmod "${crasher}"/crasher.ko
57f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
58f08c3bdfSopenharmony_ci		echo 2 >/proc/crasher
59f08c3bdfSopenharmony_ci		;;
60f08c3bdfSopenharmony_ci
61f08c3bdfSopenharmony_ci	"ACL")
62f08c3bdfSopenharmony_ci		# Panic test 3 in crasher module: hang w/double spinlock
63f08c3bdfSopenharmony_ci		# requires nmi_watchdog be enabled
64f08c3bdfSopenharmony_ci		insmod "${crasher}"/crasher.ko
65f08c3bdfSopenharmony_ci		echo 3 >/proc/crasher
66f08c3bdfSopenharmony_ci		;;
67f08c3bdfSopenharmony_ci
68f08c3bdfSopenharmony_ci	"KPIDB")
69f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HARDWARE_ENTRY cpoint_type=BUG cpoint_count=05
70f08c3bdfSopenharmony_ci		;;
71f08c3bdfSopenharmony_ci	"KPIDE")
72f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HARDWARE_ENTRY cpoint_type=EXCEPTION cpoint_count=05
73f08c3bdfSopenharmony_ci		;;
74f08c3bdfSopenharmony_ci	"KPIDL")
75f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HARDWARE_ENTRY cpoint_type=LOOP cpoint_count=05
76f08c3bdfSopenharmony_ci		;;
77f08c3bdfSopenharmony_ci	"KPIDP")
78f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HARDWARE_ENTRY cpoint_type=PANIC cpoint_count=05
79f08c3bdfSopenharmony_ci		;;
80f08c3bdfSopenharmony_ci	"KPIDO")
81f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
82f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HARDWARE_ENTRY cpoint_type=OVERFLOW cpoint_count=10
83f08c3bdfSopenharmony_ci		;;
84f08c3bdfSopenharmony_ci	"KPIEB")
85f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HW_IRQ_EN cpoint_type=BUG cpoint_count=10
86f08c3bdfSopenharmony_ci		;;
87f08c3bdfSopenharmony_ci	"KPIEE")
88f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HW_IRQ_EN cpoint_type=EXCEPTION cpoint_count=10
89f08c3bdfSopenharmony_ci		;;
90f08c3bdfSopenharmony_ci	"KPIEL")
91f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HW_IRQ_EN cpoint_type=LOOP cpoint_count=10
92f08c3bdfSopenharmony_ci		;;
93f08c3bdfSopenharmony_ci	"KPIEP")
94f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HW_IRQ_EN cpoint_type=PANIC cpoint_count=10
95f08c3bdfSopenharmony_ci		;;
96f08c3bdfSopenharmony_ci	"KPIEO")
97f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
98f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_HW_IRQ_EN cpoint_type=OVERFLOW cpoint_count=10
99f08c3bdfSopenharmony_ci		;;
100f08c3bdfSopenharmony_ci	"KPTEB")
101f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_TASKLET_ENTRY cpoint_type=BUG cpoint_count=10
102f08c3bdfSopenharmony_ci		;;
103f08c3bdfSopenharmony_ci	"KPTEE")
104f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_TASKLET_ENTRY cpoint_type=EXCEPTION cpoint_count=10
105f08c3bdfSopenharmony_ci		;;
106f08c3bdfSopenharmony_ci	"KPTEL")
107f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_TASKLET_ENTRY cpoint_type=LOOP cpoint_count=10
108f08c3bdfSopenharmony_ci		;;
109f08c3bdfSopenharmony_ci	"KPTEP")
110f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_TASKLET_ENTRY cpoint_type=PANIC cpoint_count=10
111f08c3bdfSopenharmony_ci		;;
112f08c3bdfSopenharmony_ci	"KPTEO")
113f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
114f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=INT_TASKLET_ENTRY cpoint_type=OVERFLOW cpoint_count=10
115f08c3bdfSopenharmony_ci		;;
116f08c3bdfSopenharmony_ci	"KPBB")
117f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=FS_DEVRW cpoint_type=BUG cpoint_count=10
118f08c3bdfSopenharmony_ci		;;
119f08c3bdfSopenharmony_ci	"KPBE")
120f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=FS_DEVRW cpoint_type=EXCEPTION cpoint_count=10
121f08c3bdfSopenharmony_ci		;;
122f08c3bdfSopenharmony_ci	"KPBL")
123f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=FS_DEVRW cpoint_type=LOOP cpoint_count=10
124f08c3bdfSopenharmony_ci		;;
125f08c3bdfSopenharmony_ci	"KPBP")
126f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=FS_DEVRW cpoint_type=PANIC cpoint_count=10
127f08c3bdfSopenharmony_ci		;;
128f08c3bdfSopenharmony_ci	"KPBO")
129f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
130f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=FS_DEVRW cpoint_type=OVERFLOW cpoint_count=10
131f08c3bdfSopenharmony_ci		;;
132f08c3bdfSopenharmony_ci	"KPMSB")
133f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=MEM_SWAPOUT cpoint_type=BUG cpoint_count=10
134f08c3bdfSopenharmony_ci		;;
135f08c3bdfSopenharmony_ci	"KPMSE")
136f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=MEM_SWAPOUT cpoint_type=EXCEPTION cpoint_count=10
137f08c3bdfSopenharmony_ci		;;
138f08c3bdfSopenharmony_ci	"KPMSL")
139f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=MEM_SWAPOUT cpoint_type=LOOP cpoint_count=10
140f08c3bdfSopenharmony_ci		;;
141f08c3bdfSopenharmony_ci	"KPMSP")
142f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=MEM_SWAPOUT cpoint_type=PANIC cpoint_count=10
143f08c3bdfSopenharmony_ci		;;
144f08c3bdfSopenharmony_ci	"KPMSO")
145f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
146f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=MEM_SWAPOUT cpoint_type=OVERFLOW cpoint_count=10
147f08c3bdfSopenharmony_ci		;;
148f08c3bdfSopenharmony_ci	"KPTB")
149f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=TIMERADD cpoint_type=BUG cpoint_count=10
150f08c3bdfSopenharmony_ci		;;
151f08c3bdfSopenharmony_ci	"KPTE")
152f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=TIMERADD cpoint_type=EXCEPTION cpoint_count=10
153f08c3bdfSopenharmony_ci		;;
154f08c3bdfSopenharmony_ci	"KPTL")
155f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=TIMERADD cpoint_type=LOOP cpoint_count=10
156f08c3bdfSopenharmony_ci		;;
157f08c3bdfSopenharmony_ci	"KPTP")
158f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=TIMERADD cpoint_type=PANIC cpoint_count=10
159f08c3bdfSopenharmony_ci		;;
160f08c3bdfSopenharmony_ci	"KPTO")
161f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
162f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=TIMERADD cpoint_type=OVERFLOW cpoint_count=10
163f08c3bdfSopenharmony_ci		;;
164f08c3bdfSopenharmony_ci	"KPSB")
165f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=SCSI_DISPATCH_CMD cpoint_type=BUG cpoint_count=10
166f08c3bdfSopenharmony_ci		;;
167f08c3bdfSopenharmony_ci	"KPSE")
168f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=SCSI_DISPATCH_CMD cpoint_type=EXCEPTION cpoint_count=10
169f08c3bdfSopenharmony_ci		;;
170f08c3bdfSopenharmony_ci	"KPSL")
171f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=SCSI_DISPATCH_CMD cpoint_type=LOOP cpoint_count=10
172f08c3bdfSopenharmony_ci		;;
173f08c3bdfSopenharmony_ci	"KPSP")
174f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=SCSI_DISPATCH_CMD cpoint_type=PANIC cpoint_count=10
175f08c3bdfSopenharmony_ci		;;
176f08c3bdfSopenharmony_ci	"KPSO")
177f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
178f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=SCSI_DISPATCH_CMD cpoint_type=OVERFLOW cpoint_count=10
179f08c3bdfSopenharmony_ci		;;
180f08c3bdfSopenharmony_ci	"KPIB")
181f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=IDE_CORE_CP cpoint_type=BUG cpoint_count=10
182f08c3bdfSopenharmony_ci		;;
183f08c3bdfSopenharmony_ci	"KPIE")
184f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=IDE_CORE_CP cpoint_type=EXCEPTION cpoint_count=10
185f08c3bdfSopenharmony_ci		;;
186f08c3bdfSopenharmony_ci	"KPIL")
187f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=IDE_CORE_CP cpoint_type=LOOP cpoint_count=10
188f08c3bdfSopenharmony_ci		;;
189f08c3bdfSopenharmony_ci	"KPIP")
190f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=IDE_CORE_CP cpoint_type=PANIC cpoint_count=10
191f08c3bdfSopenharmony_ci		;;
192f08c3bdfSopenharmony_ci	"KPIO")
193f08c3bdfSopenharmony_ci		echo 1 >/proc/sys/kernel/panic_on_oops
194f08c3bdfSopenharmony_ci		insmod "${lkdtm}"/lkdtm.ko cpoint_name=IDE_CORE_CP cpoint_type=OVERFLOW cpoint_count=01
195f08c3bdfSopenharmony_ci		;;
196f08c3bdfSopenharmony_ci        "KLEXT")
197f08c3bdfSopenharmony_ci                echo "ext3 ${EXT3_PART}" >/etc/kdump.conf
198f08c3bdfSopenharmony_ci                if [ "${FILTER}" -eq 1 ]; then
199f08c3bdfSopenharmony_ci                        echo "core_collector makedumpfile ${MAKE_OPTIONS}" >>/etc/kdump.conf
200f08c3bdfSopenharmony_ci                fi
201f08c3bdfSopenharmony_ci                /etc/init.d/kdump restart
202f08c3bdfSopenharmony_ci                echo c >/proc/sysrq-trigger
203f08c3bdfSopenharmony_ci                ;;
204f08c3bdfSopenharmony_ci
205f08c3bdfSopenharmony_ci        "KLLBL")
206f08c3bdfSopenharmony_ci                echo "ext3 LABEL=${EXT3_LABEL}" >/etc/kdump.conf
207f08c3bdfSopenharmony_ci                if [ "${FILTER}" -eq 1 ]; then
208f08c3bdfSopenharmony_ci                        echo "core_collector makedumpfile ${MAKE_OPTIONS}" >>/etc/kdump.conf
209f08c3bdfSopenharmony_ci                fi
210f08c3bdfSopenharmony_ci                /etc/init.d/kdump restart
211f08c3bdfSopenharmony_ci                echo c >/proc/sysrq-trigger
212f08c3bdfSopenharmony_ci                ;;
213f08c3bdfSopenharmony_ci
214f08c3bdfSopenharmony_ci        "KLUID")
215f08c3bdfSopenharmony_ci                echo "ext3 UUID=${EXT3_UID}" >/etc/kdump.conf
216f08c3bdfSopenharmony_ci                if [ "${FILTER}" -eq 1 ]; then
217f08c3bdfSopenharmony_ci                        echo "core_collector makedumpfile ${MAKE_OPTIONS}" >>/etc/kdump.conf
218f08c3bdfSopenharmony_ci                fi
219f08c3bdfSopenharmony_ci                /etc/init.d/kdump restart
220f08c3bdfSopenharmony_ci                echo c >/proc/sysrq-trigger
221f08c3bdfSopenharmony_ci                ;;
222f08c3bdfSopenharmony_ci
223f08c3bdfSopenharmony_ci        "KLRAW")
224f08c3bdfSopenharmony_ci                echo "raw ${RAW_PART}" >/etc/kdump.conf
225f08c3bdfSopenharmony_ci                if [ "${FILTER}" -eq 1 ]; then
226f08c3bdfSopenharmony_ci                        echo "core_collector makedumpfile ${MAKE_OPTIONS}" >>/etc/kdump.conf
227f08c3bdfSopenharmony_ci                fi
228f08c3bdfSopenharmony_ci                /etc/init.d/kdump restart
229f08c3bdfSopenharmony_ci                echo c >/proc/sysrq-trigger
230f08c3bdfSopenharmony_ci                ;;
231f08c3bdfSopenharmony_ci
232f08c3bdfSopenharmony_ci        "KNSCP")
233f08c3bdfSopenharmony_ci                echo "net ${SCP_PATH}" >/etc/kdump.conf
234f08c3bdfSopenharmony_ci                if [ "${LINK_DELAY}" ]; then
235f08c3bdfSopenharmony_ci                    echo "link_delay ${LINK_DELAY}" >>/etc/kdump.conf
236f08c3bdfSopenharmony_ci                fi
237f08c3bdfSopenharmony_ci
238f08c3bdfSopenharmony_ci                expect -f ./ssh.tcl "/etc/init.d/kdump propagate" "${SCP_PASS}"
239f08c3bdfSopenharmony_ci                if [ "${FILTER}" -eq 1 ]; then
240f08c3bdfSopenharmony_ci                        echo "core_collector makedumpfile ${MAKE_OPTIONS}" >>/etc/kdump.conf
241f08c3bdfSopenharmony_ci                fi
242f08c3bdfSopenharmony_ci                /etc/init.d/kdump restart
243f08c3bdfSopenharmony_ci                echo c >/proc/sysrq-trigger
244f08c3bdfSopenharmony_ci                ;;
245f08c3bdfSopenharmony_ci
246f08c3bdfSopenharmony_ci        "KNNFS")
247f08c3bdfSopenharmony_ci                echo "net ${NFS_PATH}" >/etc/kdump.conf
248f08c3bdfSopenharmony_ci                if [ "${LINK_DELAY}" ]; then
249f08c3bdfSopenharmony_ci                    echo "link_delay ${LINK_DELAY}" >>/etc/kdump.conf
250f08c3bdfSopenharmony_ci                fi
251f08c3bdfSopenharmony_ci
252f08c3bdfSopenharmony_ci                if [ "${FILTER}" -eq 1 ]; then
253f08c3bdfSopenharmony_ci                        echo "core_collector makedumpfile ${MAKE_OPTIONS}" >>/etc/kdump.conf
254f08c3bdfSopenharmony_ci                fi
255f08c3bdfSopenharmony_ci                /etc/init.d/kdump restart
256f08c3bdfSopenharmony_ci                echo c >/proc/sysrq-trigger
257f08c3bdfSopenharmony_ci                ;;
258f08c3bdfSopenharmony_ci
259f08c3bdfSopenharmony_ci        "KDENB")
260f08c3bdfSopenharmony_ci                echo "net ${SCP_PATH}" >/etc/kdump.conf
261f08c3bdfSopenharmony_ci                expect -f ./ssh.tcl "/etc/init.d/kdump propagate" "${SCP_PASS}"
262f08c3bdfSopenharmony_ci                /etc/init.d/kdump restart
263f08c3bdfSopenharmony_ci                ;;
264f08c3bdfSopenharmony_ci
265f08c3bdfSopenharmony_ci        *)
266f08c3bdfSopenharmony_ci                echo "Unknown test."
267f08c3bdfSopenharmony_ci                ;;
268f08c3bdfSopenharmony_ci
269f08c3bdfSopenharmony_ciesac
270f08c3bdfSopenharmony_ci
271f08c3bdfSopenharmony_ciexit 0
272