. ./config

case $1 in

	"KEXEC-L")
                kexec -l /boot/vmlinuz --initrd=/boot/initrd --append="`cat /pro
c/cmdline`"
                sleep 10s
                kexec -e
                ;;
        "MNS")
                echo "Not implemented"
                ;;

        "MNN")
                echo "Not implemented"
                ;;

        "MCS")
                echo "Not implemented"
                ;;

        "MCN")
                echo "Not implemented"
                ;;

        "MCF")
                echo "Not implemented"
                ;;

	"ACS")
		echo c > /proc/sysrq-trigger
		;;

	"ACP")
		# Panic test 0 in crasher module: panic()
		insmod $CRASHER_MOD
		echo 0 > /proc/crasher
		;;

	"ACB")
		# Panic test 1 in crasher module: BUG()
		insmod $CRASHER_MOD
		echo 1 > /proc/crasher
		;;

	"ACE")
		# Panic test 2 in crasher module: panic_on_oops
		insmod $CRASHER_MOD
		echo 1 > /proc/sys/kernel/panic_on_oops
		echo 2 > /proc/crasher
		;;

	"ACL")
		# Panic test 3 in crasher module: hang w/double spinlock
		# requires nmi_watchdog be enabled
		insmod $CRASHER_MOD
		echo 3 > /proc/crasher
		;;

	"KPIDB")
		insmod $LKDTM cpoint_name=INT_HARDWARE_ENTRY cpoint_type=BUG cpoint_count=05
		;;	
	"KPIDE")
		insmod $LKDTM cpoint_name=INT_HARDWARE_ENTRY cpoint_type=EXCEPTION cpoint_count=05
		;;	
	"KPIDL")
		insmod $LKDTM cpoint_name=INT_HARDWARE_ENTRY cpoint_type=LOOP cpoint_count=05
		;;	
	"KPIDP")
		insmod $LKDTM cpoint_name=INT_HARDWARE_ENTRY cpoint_type=PANIC cpoint_count=05
		;;	
	"KPIDO")
		echo 1 > /proc/sys/kernel/panic_on_oops
		insmod $LKDTM cpoint_name=INT_HARDWARE_ENTRY cpoint_type=OVERFLOW cpoint_count=10
		;;	
	"KPIEB")
		insmod $LKDTM cpoint_name=INT_HW_IRQ_EN cpoint_type=BUG cpoint_count=10
		;;	
	"KPIEE")
		insmod $LKDTM cpoint_name=INT_HW_IRQ_EN cpoint_type=EXCEPTION cpoint_count=10
		;;	
	"KPIEL")
		insmod $LKDTM cpoint_name=INT_HW_IRQ_EN cpoint_type=LOOP cpoint_count=10
		;;	
	"KPIEP")
		insmod $LKDTM cpoint_name=INT_HW_IRQ_EN cpoint_type=PANIC cpoint_count=10
		;;	
	"KPIEO")
		echo 1 > /proc/sys/kernel/panic_on_oops
		insmod $LKDTM cpoint_name=INT_HW_IRQ_EN cpoint_type=OVERFLOW cpoint_count=10
		;;	
	"KPTEB")
		insmod $LKDTM cpoint_name=INT_TASKLET_ENTRY cpoint_type=BUG cpoint_count=10
		;;
	"KPTEE")
		insmod $LKDTM cpoint_name=INT_TASKLET_ENTRY cpoint_type=EXCEPTION cpoint_count=10
		;;
	"KPTEL")
		insmod $LKDTM cpoint_name=INT_TASKLET_ENTRY cpoint_type=LOOP cpoint_count=10
		;;
	"KPTEP")
		insmod $LKDTM cpoint_name=INT_TASKLET_ENTRY cpoint_type=PANIC cpoint_count=10
		;;
	"KPTEO")
		echo 1 > /proc/sys/kernel/panic_on_oops
		insmod $LKDTM cpoint_name=INT_TASKLET_ENTRY cpoint_type=OVERFLOW cpoint_count=10
		;;
	"KPBB")
		insmod $LKDTM cpoint_name=FS_DEVRW cpoint_type=BUG cpoint_count=10
		;;
	"KPBE")
		insmod $LKDTM cpoint_name=FS_DEVRW cpoint_type=EXCEPTION cpoint_count=10
		;;
	"KPBL")
		insmod $LKDTM cpoint_name=FS_DEVRW cpoint_type=LOOP cpoint_count=10
		;;
	"KPBP")
		insmod $LKDTM cpoint_name=FS_DEVRW cpoint_type=PANIC cpoint_count=10
		;;
	"KPBO")
		echo 1 > /proc/sys/kernel/panic_on_oops
		insmod $LKDTM cpoint_name=FS_DEVRW cpoint_type=OVERFLOW cpoint_count=10
		;;
	"KPMSB")
		insmod $LKDTM cpoint_name=MEM_SWAPOUT cpoint_type=BUG cpoint_count=10
		;;
	"KPMSE")
		insmod $LKDTM cpoint_name=MEM_SWAPOUT cpoint_type=EXCEPTION cpoint_count=10
		;;
	"KPMSL")
		insmod $LKDTM cpoint_name=MEM_SWAPOUT cpoint_type=LOOP cpoint_count=10
		;;
	"KPMSP")
		insmod $LKDTM cpoint_name=MEM_SWAPOUT cpoint_type=PANIC cpoint_count=10
		;;
	"KPMSO")
		echo 1 > /proc/sys/kernel/panic_on_oops
		insmod $LKDTM cpoint_name=MEM_SWAPOUT cpoint_type=OVERFLOW cpoint_count=10
		;;
	"KPTB")
		insmod $LKDTM cpoint_name=TIMERADD cpoint_type=BUG cpoint_count=10
		;;
	"KPTE")
		insmod $LKDTM cpoint_name=TIMERADD cpoint_type=EXCEPTION cpoint_count=10
		;;
	"KPTL")
		insmod $LKDTM cpoint_name=TIMERADD cpoint_type=LOOP cpoint_count=10
		;;
	"KPTP")
		insmod $LKDTM cpoint_name=TIMERADD cpoint_type=PANIC cpoint_count=10
		;;
	"KPTO")
		echo 1 > /proc/sys/kernel/panic_on_oops
		insmod $LKDTM cpoint_name=TIMERADD cpoint_type=OVERFLOW cpoint_count=10
		;;
	"KPSB")
		insmod $LKDTM cpoint_name=SCSI_DISPATCH_CMD cpoint_type=BUG cpoint_count=10
		;;
	"KPSE")
		insmod $LKDTM cpoint_name=SCSI_DISPATCH_CMD cpoint_type=EXCEPTION cpoint_count=10
		;;
	"KPSL")
		insmod $LKDTM cpoint_name=SCSI_DISPATCH_CMD cpoint_type=LOOP cpoint_count=10
		;;
	"KPSP")
		insmod $LKDTM cpoint_name=SCSI_DISPATCH_CMD cpoint_type=PANIC cpoint_count=10
		;;
	"KPSO")
		echo 1 > /proc/sys/kernel/panic_on_oops
		insmod $LKDTM cpoint_name=SCSI_DISPATCH_CMD cpoint_type=OVERFLOW cpoint_count=10
		;;
	"KPIB")
		insmod $LKDTM cpoint_name=IDE_CORE_CP cpoint_type=BUG cpoint_count=10
		;;
	"KPIE")
		insmod $LKDTM cpoint_name=IDE_CORE_CP cpoint_type=EXCEPTION cpoint_count=10
		;;
	"KPIL")
		insmod $LKDTM cpoint_name=IDE_CORE_CP cpoint_type=LOOP cpoint_count=10
		;;
	"KPIP")
		insmod $LKDTM cpoint_name=IDE_CORE_CP cpoint_type=PANIC cpoint_count=10
		;;
	"KPIO")
		echo 1 > /proc/sys/kernel/panic_on_oops
		insmod $LKDTM cpoint_name=IDE_CORE_CP cpoint_type=OVERFLOW cpoint_count=01
		;;
        *)
                echo "Unknown test"
                ;;

esac

