1 #include "defs.h" 2 3 #include "xlat/bootflags1.h" 4 #include "xlat/bootflags2.h" 5 #include "xlat/bootflags3.h" 6 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