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