Lines Matching refs:scno
484 if (tcp->scno < 0 || tcp->scno >= nsyscalls) in dumpio()
486 if (sysent[tcp->scno].sys_func == printargs) in dumpio()
489 if (sysent[tcp->scno].sys_func == sys_read || in dumpio()
490 sysent[tcp->scno].sys_func == sys_pread || in dumpio()
491 sysent[tcp->scno].sys_func == sys_pread64 || in dumpio()
492 sysent[tcp->scno].sys_func == sys_recv || in dumpio()
493 sysent[tcp->scno].sys_func == sys_recvfrom) in dumpio()
495 else if (sysent[tcp->scno].sys_func == sys_readv) in dumpio()
500 if (sysent[tcp->scno].sys_func == sys_write || in dumpio()
501 sysent[tcp->scno].sys_func == sys_pwrite || in dumpio()
502 sysent[tcp->scno].sys_func == sys_pwrite64 || in dumpio()
503 sysent[tcp->scno].sys_func == sys_send || in dumpio()
504 sysent[tcp->scno].sys_func == sys_sendto) in dumpio()
506 else if (sysent[tcp->scno].sys_func == sys_writev) in dumpio()
551 tcp->scno = subcall + tcp->u_arg[0];
552 if (sysent[tcp->scno].nargs != -1)
553 tcp->u_nargs = sysent[tcp->scno].nargs;
562 tcp->scno = subcall + tcp->u_arg[0];
564 for (i = 0; i < sysent[tcp->scno].nargs; i++) {
581 tcp->u_nargs = sysent[tcp->scno].nargs;
590 tcp->scno = subcall + i;
591 if (sysent[tcp->scno].nargs != -1)
592 tcp->u_nargs = sysent[tcp->scno].nargs;
601 tcp->scno = subcall + tcp->u_arg[5];
602 if (sysent[tcp->scno].nargs != -1)
603 tcp->u_nargs = sysent[tcp->scno].nargs;
610 if (subcalls_table[i].call == tcp->scno) break;
613 tcp->scno = subcalls_table[i].subcalls[tcp->u_arg[0]];
635 if (tcp->scno < 0 || tcp->scno >= nsyscalls) in internal_syscall()
638 func = sysent[tcp->scno].sys_func; in internal_syscall()
739 long scno = 0; in get_scno() local
770 scno = syscall_mode; in get_scno()
804 scno = opcode & 0xff; in get_scno()
827 scno = ptrace(PTRACE_PEEKTEXT, tcp->pid, svc_addr, 0); in get_scno()
831 scno >>= 48; in get_scno()
833 scno >>= 16; in get_scno()
840 scno = (scno | tmp) & 0xff; in get_scno()
844 if (upeek(tcp, sizeof(unsigned long)*PT_R0, &scno) < 0) in get_scno()
848 if (scno == 0 && (tcp->flags & TCB_WAITEXECVE)) { in get_scno()
887 scno = regs.r8; in get_scno()
896 if (upeek(tcp, PT_ORIG_P0, &scno)) in get_scno()
899 if (upeek(tcp, 4*ORIG_EAX, &scno) < 0) in get_scno()
902 if (upeek(tcp, 8*ORIG_RAX, &scno) < 0) in get_scno()
973 if (upeek(tcp, PT_R1, &scno) < 0) /* orig eax */ in get_scno()
976 if (upeek (tcp, PT_R15, &scno) < 0) in get_scno()
1017 scno = regs.ARM_r7; in get_scno()
1023 scno = ptrace(PTRACE_PEEKTEXT, tcp->pid, (void *)(regs.ARM_pc - 4), NULL); in get_scno()
1027 if (scno == 0 && (tcp->flags & TCB_WAITEXECVE)) { in get_scno()
1037 if (scno == 0xef000000) { in get_scno()
1038 scno = regs.ARM_r7; in get_scno()
1040 if ((scno & 0x0ff00000) != 0x0f900000) { in get_scno()
1042 scno); in get_scno()
1049 scno &= 0x000fffff; in get_scno()
1052 if (scno & 0x0f0000) { in get_scno()
1057 scno &= 0x0000ffff; in get_scno()
1072 if (upeek(tcp, 4*PT_ORIG_D0, &scno) < 0) in get_scno()
1083 scno = r2; in get_scno()
1086 if (scno == 0 && tcp->flags & TCB_WAITEXECVE) { in get_scno()
1091 if (scno < 0 || scno > nsyscalls) { in get_scno()
1094 fprintf (stderr, "stray syscall exit: v0 = %ld\n", scno); in get_scno()
1103 if (upeek(tcp, REG_V0, &scno) < 0) in get_scno()
1107 if (scno == 0 && tcp->flags & TCB_WAITEXECVE) { in get_scno()
1112 if (scno < 0 || scno > nsyscalls) { in get_scno()
1115 fprintf (stderr, "stray syscall exit: v0 = %ld\n", scno); in get_scno()
1128 if (upeek(tcp, REG_R0, &scno) < 0) in get_scno()
1132 if (scno == 0 && tcp->flags & TCB_WAITEXECVE) { in get_scno()
1141 if (scno < 0 || scno > nsyscalls) { in get_scno()
1144 fprintf (stderr, "stray syscall exit: r0 = %ld\n", scno); in get_scno()
1213 scno = 156; in get_scno()
1215 scno = regs.u_regs[U_REG_G1]; in get_scno()
1216 if (scno == 0) { in get_scno()
1217 scno = regs.u_regs[U_REG_O0]; in get_scno()
1222 if (upeek(tcp, PT_GR20, &scno) < 0) in get_scno()
1235 if (upeek(tcp, 4*(REG_REG0+3), &scno) < 0) in get_scno()
1238 if (scno < 0) { in get_scno()
1242 long correct_scno = (scno & 0xff); in get_scno()
1247 scno, in get_scno()
1249 scno = correct_scno; in get_scno()
1254 if (scno == 0 && tcp->flags & TCB_WAITEXECVE) { in get_scno()
1260 if (upeek(tcp, REG_SYSCALL, &scno) < 0) in get_scno()
1262 scno &= 0xFFFF; in get_scno()
1272 if (upeek(tcp, 4*PT_R9, &scno) < 0) in get_scno()
1275 if (upeek(tcp, PTREGS_OFFSET_REG(10), &scno) < 0) in get_scno()
1286 if (upeek(tcp, 0, &scno) < 0) in get_scno()
1292 if (upeek(tcp, uoff(u_arg[7]), &scno) < 0) in get_scno()
1306 scno = tcp->status.PR_SYSCALL; in get_scno()
1309 scno = tcp->status.PR_WHAT; in get_scno()
1318 pread(tcp->pfd, &scno, sizeof(scno), regs.r_esp + sizeof(int)); in get_scno()
1321 scno = regs.r_eax; in get_scno()
1329 tcp->scno = scno; in get_scno()
1337 long scno = tcp->scno; in known_scno() local
1339 if (scno >= 0 && scno < nsyscalls && sysent[scno].native_scno != 0) in known_scno()
1340 scno = sysent[scno].native_scno; in known_scno()
1343 scno += NR_SYSCALL_BASE; in known_scno()
1344 return scno; in known_scno()
1358 int scno = known_scno(tcp); in syscall_fixup() local
1363 scno == SYS_fork in syscall_fixup()
1365 || scno == SYS_vfork in syscall_fixup()
1368 || scno == SYS_fork1 in syscall_fixup()
1371 || scno == SYS_forkall in syscall_fixup()
1374 || scno == SYS_rfork1 in syscall_fixup()
1377 || scno == SYS_rforkall in syscall_fixup()
1400 if (scno == 0) { in syscall_fixup()
1406 if (scno != 0) { in syscall_fixup()
1442 syscall_mode = tcp->scno; in syscall_fixup()
1450 && (gpr2 == -ENOSYS || gpr2 == tcp->scno)) { in syscall_fixup()
1537 if (tcp->scno >= 0 && tcp->scno < nsyscalls && in get_error()
1538 sysent[tcp->scno].sys_flags & SYSCALL_NEVER_FAILS) { in get_error()
1985 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
1986 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
1997 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
1998 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2028 if (tcp->scno >= 0 && tcp->scno < nsyscalls in syscall_enter()
2029 && sysent[tcp->scno].nargs != -1) in syscall_enter()
2030 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2059 if (tcp->scno >= 0 && tcp->scno < nsyscalls in syscall_enter()
2060 && sysent[tcp->scno].nargs != -1) in syscall_enter()
2061 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2072 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2073 nargs = tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2092 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2093 nargs = tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2118 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2119 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2134 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2135 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2145 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2146 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2158 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2159 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2166 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2178 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2179 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2195 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2216 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2231 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2232 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2243 if (tcp->scno >= 0 && tcp->scno < nsyscalls) in syscall_enter()
2244 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2260 if (tcp->scno >= 0 && tcp->scno < nsyscalls) in syscall_enter()
2261 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2272 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2273 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2284 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2285 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2296 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2297 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2310 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2311 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2329 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2330 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2347 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2348 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2354 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2355 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2364 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1) in syscall_enter()
2365 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2375 if (tcp->scno >= 0 && tcp->scno < nsyscalls && in syscall_enter()
2376 sysent[tcp->scno].nargs > tcp->status.val) in syscall_enter()
2377 tcp->u_nargs = sysent[tcp->scno].nargs; in syscall_enter()
2431 if (res == 1 && tcp->scno >= 0 && tcp->scno < nsyscalls && in trace_syscall_exiting()
2432 !(qual_flags[tcp->scno] & QUAL_TRACE)) { in trace_syscall_exiting()
2442 else if (tcp->scno >= nsyscalls || tcp->scno < 0) in trace_syscall_exiting()
2443 tprintf("syscall_%lu", tcp->scno); in trace_syscall_exiting()
2445 tprintf("%s", sysent[tcp->scno].sys_name); in trace_syscall_exiting()
2468 if (tcp->scno >= nsyscalls || tcp->scno < 0 in trace_syscall_exiting()
2469 || (qual_flags[tcp->scno] & QUAL_RAW)) in trace_syscall_exiting()
2474 sys_res = (*sysent[tcp->scno].sys_func)(tcp); in trace_syscall_exiting()
2480 if (tcp->scno >= nsyscalls || tcp->scno < 0 || in trace_syscall_exiting()
2481 qual_flags[tcp->scno] & QUAL_RAW) { in trace_syscall_exiting()
2596 else if (tcp->scno >= nsyscalls || tcp->scno < 0) in trace_syscall_entering()
2597 tprintf("syscall_%lu(", tcp->scno); in trace_syscall_entering()
2599 tprintf("%s(", sysent[tcp->scno].sys_name); in trace_syscall_entering()
2699 if (tcp->scno >=0 && tcp->scno < nsyscalls && !(qual_flags[tcp->scno] & QUAL_TRACE)) { in trace_syscall_entering()
2713 if (tcp->scno >= nsyscalls || tcp->scno < 0) in trace_syscall_entering()
2714 tprintf("syscall_%lu(", tcp->scno); in trace_syscall_entering()
2716 tprintf("%s(", sysent[tcp->scno].sys_name); in trace_syscall_entering()
2717 if (tcp->scno >= nsyscalls || tcp->scno < 0 || in trace_syscall_entering()
2718 ((qual_flags[tcp->scno] & QUAL_RAW) && in trace_syscall_entering()
2719 sysent[tcp->scno].sys_func != sys_exit)) in trace_syscall_entering()
2722 sys_res = (*sysent[tcp->scno].sys_func)(tcp); in trace_syscall_entering()
2810 int i, scno, nargs; local
2813 if ((scno = tcp->u_arg[0]) > nsyscalls) {
2814 fprintf(stderr, "Bogus syscall: %u\n", scno);
2817 nargs = sysent[scno].nargs;
2818 tprintf("%s", sysent[scno].sys_name);