trap-v4.c (160798) | trap-v4.c (160801) |
---|---|
1/* $NetBSD: fault.c,v 1.45 2003/11/20 14:44:36 scw Exp $ */ 2 3/*- 4 * Copyright 2004 Olivier Houchard 5 * Copyright 2003 Wasabi Systems, Inc. 6 * All rights reserved. 7 * 8 * Written by Steve C. Woodford for Wasabi Systems, Inc. --- 68 unchanged lines hidden (view full) --- 77 * 78 * Created : 28/11/94 79 */ 80 81 82#include "opt_ktrace.h" 83 84#include <sys/cdefs.h> | 1/* $NetBSD: fault.c,v 1.45 2003/11/20 14:44:36 scw Exp $ */ 2 3/*- 4 * Copyright 2004 Olivier Houchard 5 * Copyright 2003 Wasabi Systems, Inc. 6 * All rights reserved. 7 * 8 * Written by Steve C. Woodford for Wasabi Systems, Inc. --- 68 unchanged lines hidden (view full) --- 77 * 78 * Created : 28/11/94 79 */ 80 81 82#include "opt_ktrace.h" 83 84#include <sys/cdefs.h> |
85__FBSDID("$FreeBSD: head/sys/arm/arm/trap.c 160798 2006-07-28 19:05:28Z jhb $"); | 85__FBSDID("$FreeBSD: head/sys/arm/arm/trap.c 160801 2006-07-28 20:22:58Z jhb $"); |
86 87#include <sys/types.h> 88 89#include <sys/param.h> 90#include <sys/systm.h> 91#include <sys/proc.h> 92#include <sys/kernel.h> 93#include <sys/lock.h> --- 811 unchanged lines hidden (view full) --- 905 ap++; 906 } 907 if (p->p_sysent->sv_mask) 908 code &= p->p_sysent->sv_mask; 909 if (code >= p->p_sysent->sv_size) 910 callp = &p->p_sysent->sv_table[0]; 911 else 912 callp = &p->p_sysent->sv_table[code]; | 86 87#include <sys/types.h> 88 89#include <sys/param.h> 90#include <sys/systm.h> 91#include <sys/proc.h> 92#include <sys/kernel.h> 93#include <sys/lock.h> --- 811 unchanged lines hidden (view full) --- 905 ap++; 906 } 907 if (p->p_sysent->sv_mask) 908 code &= p->p_sysent->sv_mask; 909 if (code >= p->p_sysent->sv_size) 910 callp = &p->p_sysent->sv_table[0]; 911 else 912 callp = &p->p_sysent->sv_table[code]; |
913 nargs = callp->sy_narg & SYF_ARGMASK; | 913 nargs = callp->sy_narg; |
914 memcpy(copyargs, ap, nap * sizeof(register_t)); 915 if (nargs > nap) { 916 error = copyin((void *)frame->tf_usr_sp, copyargs + nap, 917 (nargs - nap) * sizeof(register_t)); 918 if (error) 919 goto bad; 920 } 921 args = copyargs; 922 error = 0; 923#ifdef KTRACE 924 if (KTRPOINT(td, KTR_SYSCALL)) 925 ktrsyscall(code, nargs, args); 926#endif 927 928 CTR4(KTR_SYSC, "syscall enter thread %p pid %d proc %s code %d", td, 929 td->td_proc->p_pid, td->td_proc->p_comm, code); 930 if (error == 0) { 931 td->td_retval[0] = 0; 932 td->td_retval[1] = 0; | 914 memcpy(copyargs, ap, nap * sizeof(register_t)); 915 if (nargs > nap) { 916 error = copyin((void *)frame->tf_usr_sp, copyargs + nap, 917 (nargs - nap) * sizeof(register_t)); 918 if (error) 919 goto bad; 920 } 921 args = copyargs; 922 error = 0; 923#ifdef KTRACE 924 if (KTRPOINT(td, KTR_SYSCALL)) 925 ktrsyscall(code, nargs, args); 926#endif 927 928 CTR4(KTR_SYSC, "syscall enter thread %p pid %d proc %s code %d", td, 929 td->td_proc->p_pid, td->td_proc->p_comm, code); 930 if (error == 0) { 931 td->td_retval[0] = 0; 932 td->td_retval[1] = 0; |
933 STOPEVENT(p, S_SCE, (callp->sy_narg & SYF_ARGMASK)); | 933 STOPEVENT(p, S_SCE, callp->sy_narg); |
934 PTRACESTOP_SC(p, td, S_PT_SCE); 935 AUDIT_SYSCALL_ENTER(code, td); 936 error = (*callp->sy_call)(td, args); 937 AUDIT_SYSCALL_EXIT(error, td); 938 KASSERT(td->td_ar == NULL, 939 ("returning from syscall with td_ar set!")); 940 } 941 switch (error) { --- 94 unchanged lines hidden --- | 934 PTRACESTOP_SC(p, td, S_PT_SCE); 935 AUDIT_SYSCALL_ENTER(code, td); 936 error = (*callp->sy_call)(td, args); 937 AUDIT_SYSCALL_EXIT(error, td); 938 KASSERT(td->td_ar == NULL, 939 ("returning from syscall with td_ar set!")); 940 } 941 switch (error) { --- 94 unchanged lines hidden --- |