eantoranz |
05-03-2011 08:01 PM |
Look at the last pages of information from strace:
Code:
write(2, "Checking that ptrace can change "..., 54Checking that ptrace can change system call numbers...) = 54
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x49cba8) = 7075
waitpid(7075, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGSTOP}], WSTOPPED) = 7075
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x15 /* PTRACE_??? */, 7075, 0, 0x1) = 0
ptrace(PTRACE_SYSCALL, 7075, 0, SIG_0) = 0
waitpid(7075, [{WIFSTOPPED(s) && WSTOPSIG(s) == 133}], WSTOPPED) = 7075
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(PTRACE_PEEKUSER, 7075, 4*ORIG_EAX, [0x14]) = 0
ptrace(PTRACE_POKEUSER, 7075, 4*ORIG_EAX, 0x40) = 0
ptrace(PTRACE_CONT, 7075, 0, SIG_0) = 0
waitpid(7075, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0) = 7075
--- SIGCHLD (Child exited) @ 0 (0) ---
write(2, "OK\n", 3OK
) = 3
write(2, "Checking syscall emulation patch"..., 46Checking syscall emulation patch for ptrace...) = 46
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x49cba8) = 7076
waitpid(7076, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGSTOP}], WSTOPPED) = 7076
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x1f /* PTRACE_??? */, 7076, 0, 0) = 0
waitpid(7076, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7076
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(PTRACE_GETREGS, 7076, 0, 0xbff1381c) = 0
getpid() = 7074
ptrace(PTRACE_POKEUSER, 7076, 4*EAX, 0x1ba2) = 0
ptrace(PTRACE_CONT, 7076, 0, SIG_0) = 0
waitpid(7076, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0) = 7076
--- SIGCHLD (Child exited) @ 0 (0) ---
write(2, "OK\n", 3OK
) = 3
write(2, "Checking advanced syscall emulat"..., 55Checking advanced syscall emulation patch for ptrace...) = 55
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x49cba8) = 7077
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGSTOP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x15 /* PTRACE_??? */, 7077, 0, 0x1) = 0
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x20 /* PTRACE_??? */, 7077, 0, 0) = 0
waitpid(7077, [{WIFSTOPPED(s) && WSTOPSIG(s) == 133}], WSTOPPED) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
getpid() = 7074
ptrace(PTRACE_POKEUSER, 7077, 4*EAX, 0x1ba2) = 0
ptrace(PTRACE_CONT, 7077, 0, SIG_0) = 0
waitpid(7077, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0) = 7077
--- SIGCHLD (Child exited) @ 0 (0) ---
write(2, "OK\n", 3OK
) = 3
open("/proc/mounts", O_RDONLY|O_LARGEFILE) = 3
read(3, "rootfs / rootfs rw 0 0\nnone /sys"..., 127) = 127
read(3, "none /d", 7) = 7
read(3, "ev devtmpfs rw,r", 16) = 16
read(3, "elati", 5) = 5
read(3, "me,size=1015768k,nr_inodes=21356"..., 47) = 47
read(3, "none ", 5) = 5
read(3, "/dev/pts devpts rw,nosuid,noexec"..., 47) = 47
read(3, ",mode", 5) = 5
read(3, "=620,ptmxmode=000 0 0\nfusectl /s"..., 70) = 70
read(3, "time ", 5) = 5
read(3, "0 0\n/dev/disk/by-uuid/3a4cd983-c"..., 74) = 74
read(3, "ime,erro", 8) = 8
read(3, "rs=remount-ro,barrier=1,data=ord"..., 49) = 49
read(3, "s/kernel/debug debugfs rw,relati"..., 55) = 55
read(3, "/security securityfs rw,relatime"..., 64) = 64
read(3, "id,no", 5) = 5
read(3, "dev,relatime 0 0\nnone /var/run t"..., 42) = 42
read(3, "suid,", 5) = 5
read(3, "relatime,mode=755 0 0\nnone /var/"..., 48) = 48
read(3, "suid,", 5) = 5
read(3, "nodev,noe", 9) = 9
write(1, "Checking for tmpfs mount on /dev"..., 42Checking for tmpfs mount on /dev/shm...OK
) = 42
close(3) = 0
gettimeofday({1304470622, 545514}, NULL) = 0
getpid() = 7074
open("/dev/shm/vm_file-sVZlGE", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0600) = 3
unlink("/dev/shm/vm_file-sVZlGE") = 0
fchmod(3, 0777) = 0
_llseek(3, 4095, [4095], SEEK_SET) = 0
write(3, "\0", 1) = 1
mmap2(NULL, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x290000
write(1, "Checking PROT_EXEC mmap in /dev/"..., 39Checking PROT_EXEC mmap in /dev/shm/...) = 39
write(1, "OK\n", 3OK
) = 3
munmap(0x290000, 4096) = 0
close(3) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x49cba8) = 7078
waitpid(7078, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGSTOP}], WSTOPPED) = 7078
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(PTRACE_GETREGS, 7078, 0, 0x822c080) = 0
ptrace(PTRACE_GETFPXREGS, 7078, 0, 0xbff13600) = 0
ptrace(PTRACE_CONT, 7078, 0, SIG_0) = 0
waitpid(7078, [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0) = 7078
--- SIGCHLD (Child exited) @ 0 (0) ---
write(2, "Checking for the skas3 patch in "..., 42Checking for the skas3 patch in the host:
) = 42
write(2, " - /proc/mm...", 15 - /proc/mm...) = 15
access("/proc/mm", W_OK) = -1 ENOENT (No such file or directory)
write(2, "not found: No such file or direc"..., 37not found: No such file or directory
) = 37
write(2, " - PTRACE_FAULTINFO...", 23 - PTRACE_FAULTINFO...) = 23
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x49cba8) = 7079
waitpid(7079, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGSTOP}], WSTOPPED) = 7079
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x34 /* PTRACE_??? */, 7079, 0, 0xbff13864) = -1 EIO (Input/output error)
write(2, "not found\n", 10not found
) = 10
ptrace(PTRACE_CONT, 7079, 0, SIG_0) = 0
waitpid(7079, [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0) = 7079
--- SIGCHLD (Child exited) @ 0 (0) ---
write(2, " - PTRACE_LDT...", 17 - PTRACE_LDT...) = 17
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x49cba8) = 7080
waitpid(7080, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGSTOP}], WSTOPPED) = 7080
--- SIGCHLD (Child exited) @ 0 (0) ---
ptrace(0x36 /* PTRACE_??? */, 7080, 0, 0xbff13864) = -1 EIO (Input/output error)
write(2, "not found\n", 10not found
) = 10
ptrace(PTRACE_CONT, 7080, 0, SIG_0) = 0
waitpid(7080, [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0) = 7080
--- SIGCHLD (Child exited) @ 0 (0) ---
write(1, "UML running in SKAS0 mode\n", 26UML running in SKAS0 mode
) = 26
write(1, "Adding 27131904 bytes to physica"..., 72Adding 27131904 bytes to physical memory to account for exec-shield gap
) = 72
uname({sys="Linux", node="nano", ...}) = 0
open("/dev/shm/vm_file-2nH38w", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0600) = 3
unlink("/dev/shm/vm_file-2nH38w") = 0
fchmod(3, 0777) = 0
_llseek(3, 60686335, [60686335], SEEK_SET) = 0
write(3, "\0", 1) = 1
fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
mmap2(0xa400000, 23232512, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_SHARED|MAP_FIXED, 3, 0x23b8) = 0xa400000
_llseek(3, 1462272, [1462272], SEEK_SET) = 0
write(3, "U\272x\0\0\0\211\345\271\374\27\20\0W\211\320VS\273\21\204\0\0\315\200\211\302\205\322uV\277"..., 4096) = 4096
mprotect(0x821d000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x821e000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
sigaltstack({ss_sp=0x821e000, ss_flags=0, ss_size=4092}, NULL) = 0
rt_sigaction(SIGSEGV, {0x805ffac, [USR1 VTALRM WINCH IO], SA_STACK|SA_NODEFER}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [SEGV], NULL, 8) = 0
rt_sigaction(SIGTRAP, {0x805ffac, [USR1 VTALRM WINCH IO], SA_STACK}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [TRAP], NULL, 8) = 0
rt_sigaction(SIGFPE, {0x805ffac, [USR1 VTALRM WINCH IO], SA_STACK}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [FPE], NULL, 8) = 0
rt_sigaction(SIGILL, {0x805ffac, [USR1 VTALRM WINCH IO], SA_STACK}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [ILL], NULL, 8) = 0
rt_sigaction(SIGBUS, {0x805ffac, [USR1 VTALRM WINCH IO], SA_STACK}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [BUS], NULL, 8) = 0
rt_sigaction(SIGHUP, {SIG_IGN, [HUP], SA_RESTART}, {0x805df98, [], SA_NODEFER|SA_RESETHAND}, 8) = 0
rt_sigaction(SIGIO, {0x805ffac, [USR1 ALRM VTALRM WINCH IO], SA_STACK|SA_RESTART}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [IO], NULL, 8) = 0
rt_sigaction(SIGWINCH, {SIG_IGN, [WINCH], SA_RESTART}, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGWINCH, {0x805ffac, [USR1 VTALRM IO], SA_STACK|SA_RESTART}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [WINCH], NULL, 8) = 0
getpid() = 7074
uname({sys="Linux", node="nano", ...}) = 0
mmap2(0x9c19000, 8286208, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED, 3, 0x1bd1) = 0x9c19000
gettimeofday({1304470622, 648513}, NULL) = 0
rt_sigaction(SIGVTALRM, {0x805ffac, [USR1 WINCH IO], SA_STACK|SA_RESTART}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [VTALRM], NULL, 8) = 0
setitimer(ITIMER_VIRTUAL, {it_interval={0, 0}, it_value={0, 0}}, {it_interval={0, 0}, it_value={0, 0}}) = 0
setitimer(ITIMER_VIRTUAL, {it_interval={0, 10000}, it_value={0, 10000}}, NULL) = 0
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
sigreturn() = ? (mask now [])
--- SIGILL (Illegal instruction) @ 0 (0) ---
rt_sigaction(SIGSEGV, {SIG_DFL, [SEGV], SA_RESTART}, {0x805ffac, [USR1 VTALRM WINCH IO], SA_STACK|SA_NODEFER}, 8) = 0
rt_sigaction(SIGTERM, {SIG_IGN, [TERM], SA_RESTART}, {0x805df98, [], SA_NODEFER|SA_RESETHAND}, 8) = 0
kill(0, SIGTERM <unfinished ...>
The part about /proc/mm has me wondering because apparently, things start falling apart from that ṕoint on.
|