.TH HORNET 8 2015-07-07 Linux "System Validation Manual" .SH NAME hornet \- inject an uncorrectable memory error into a process .SH SYNOPSIS .B hornet [ .B \-D .I delay ] [ .B \-v ] [ .I address\-options ] .I COMMAND [ .I ARGS ] .br .B hornet [ .B \-D .I delay ] [ .B \-v ] [ .I address\-options ] \-p .I PID .br .B hornet [ .B \-v ] \-P .I PID .SH CONFIGURATION .B hornet requires that error injection be enabled in ACPI 5.0 mode by the BIOS and that the error injection driver .B einj is loaded. Running on a processor that does not support error recovery will crash the system when the injected error is consumed. .SH DESCRIPTION .B hornet injects an uncorrectable memory error into a program to test recovery paths. It waits for the process to terminate and tries to take the target page offline if the application did not trigger an error by accessing the injected address. .SH OPTIONS .TP .BI \-D " delay" Pause for .I delay seconds before injecting the memory error. A floating point value may be specified. .TP .B \-v print verbose details about execution progress. .TP .B address-options .BI \-a " address" inject at the specified virtual address .br .B \-t choose an address randomly from the text (code) section .br .B \-d choose an address randomly from the initialized data section .br .B \-b choose an address randomly from the uninitialized data section (heap) .br .B \-s choose an address randomly from the stack section .br .B \-m choose an address randomly from an anonymous mapped section .br If none of the address options are specified .B hornet will choose an address from the largest writable address region in the process. .TP .BI \-p " PID" inject errors into an already running process .TP .BI \-P " PID" stop the process using ptrace(2), inject at the next instruction to be executed, then continue. .SH EXIT STATUS .SH FILES .PP /sys/kernel/debug/apei/einj/* .RS 4 Error injection interface. .RE .PP /sys/devices/system/memory/hard_offline_page .RS 4 Interface to ask kernel to take pages offline. .RE .SH NOTES .SH BUGS .SH EXAMPLE .SH SEE ALSO