1 #include "defs.h"
2 
3 #include "xlat/bootflags1.h"
4 #include "xlat/bootflags2.h"
5 #include "xlat/bootflags3.h"
6 
SYS_FUNC(reboot)7 SYS_FUNC(reboot)
8 {
9 	const unsigned int magic1 = tcp->u_arg[0];
10 	const unsigned int magic2 = tcp->u_arg[1];
11 	const unsigned int cmd = tcp->u_arg[2];
12 
13 	printxval(bootflags1, magic1, "LINUX_REBOOT_MAGIC_???");
14 	tprints(", ");
15 	printxval(bootflags2, magic2, "LINUX_REBOOT_MAGIC_???");
16 	tprints(", ");
17 	printxval(bootflags3, cmd, "LINUX_REBOOT_CMD_???");
18 	if (cmd == LINUX_REBOOT_CMD_RESTART2) {
19 		tprints(", ");
20 		/*
21 		 * The size of kernel buffer is 256 bytes and
22 		 * the last byte is always zero, at most 255 bytes
23 		 * are copied from the user space.
24 		 */
25 		printstr_ex(tcp, tcp->u_arg[3], 255, QUOTE_0_TERMINATED);
26 	}
27 	return RVAL_DECODED;
28 }
29