summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrpaulo <rpaulo@FreeBSD.org>2010-08-22 11:30:49 +0000
committerrpaulo <rpaulo@FreeBSD.org>2010-08-22 11:30:49 +0000
commitdda24289cbc6154eda025e717c3f7abaf3875fdc (patch)
tree107d4d14887a8e7d60eb1e72e39022ed52d858f0
parentea11ba678823dbe5705fff2f6b2dbd5434fdea02 (diff)
downloadFreeBSD-src-dda24289cbc6154eda025e717c3f7abaf3875fdc.zip
FreeBSD-src-dda24289cbc6154eda025e717c3f7abaf3875fdc.tar.gz
Call the systrace_probe_func() when the error value.
Sponsored by: The FreeBSD Foundation
-rw-r--r--sys/kern/subr_trap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/subr_trap.c b/sys/kern/subr_trap.c
index 5c90d95..3884abf 100644
--- a/sys/kern/subr_trap.c
+++ b/sys/kern/subr_trap.c
@@ -312,7 +312,7 @@ syscallenter(struct thread *td, struct syscall_args *sa)
*/
if (systrace_probe_func != NULL && sa->callp->sy_entry != 0)
(*systrace_probe_func)(sa->callp->sy_entry, sa->code,
- sa->callp, sa->args);
+ sa->callp, sa->args, 0);
#endif
AUDIT_SYSCALL_ENTER(sa->code, td);
@@ -330,7 +330,7 @@ syscallenter(struct thread *td, struct syscall_args *sa)
*/
if (systrace_probe_func != NULL && sa->callp->sy_return != 0)
(*systrace_probe_func)(sa->callp->sy_return, sa->code,
- sa->callp, sa->args);
+ sa->callp, NULL, (error) ? -1 : td->td_retval[0]);
#endif
syscall_thread_exit(td, sa->callp);
CTR4(KTR_SYSC, "syscall: p=%p error=%d return %#lx %#lx",
OpenPOWER on IntegriCloud