summaryrefslogtreecommitdiffstats
path: root/sys/sys
diff options
context:
space:
mode:
authorLuiz Souza <luiz@netgate.com>2018-02-23 19:40:39 -0300
committerLuiz Souza <luiz@netgate.com>2018-02-23 19:40:39 -0300
commit9e3f9eb19aae437c111a95ba286571c3d9cfcf7e (patch)
tree8fb26b9ab223341823fa6d64b3743de9220ed044 /sys/sys
parent810d45dfd8239a4b42661bd4bb4e470e3a41799d (diff)
downloadFreeBSD-src-9e3f9eb19aae437c111a95ba286571c3d9cfcf7e.zip
FreeBSD-src-9e3f9eb19aae437c111a95ba286571c3d9cfcf7e.tar.gz
Revert "Revert "MFC r319873:""
This reverts commit 4c9907d21517c211b27a3cf5b7a2a976623820cc.
Diffstat (limited to 'sys/sys')
-rw-r--r--sys/sys/proc.h9
-rw-r--r--sys/sys/sysent.h3
2 files changed, 7 insertions, 5 deletions
diff --git a/sys/sys/proc.h b/sys/sys/proc.h
index d32807a..11947db6 100644
--- a/sys/sys/proc.h
+++ b/sys/sys/proc.h
@@ -142,6 +142,7 @@ struct pargs {
* j - locked by proc slock
* k - only accessed by curthread
* k*- only accessed by curthread and from an interrupt
+ * kx- only accessed by curthread and by debugger
* l - the attaching proc or attaching proc parent
* m - Giant
* n - not locked, lazy
@@ -295,8 +296,8 @@ struct thread {
u_char td_pri_class; /* (t) Scheduling class. */
u_char td_user_pri; /* (t) User pri from estcpu and nice. */
u_char td_base_user_pri; /* (t) Base user pri */
- u_int td_dbg_sc_code; /* (c) Syscall code to debugger. */
- u_int td_dbg_sc_narg; /* (c) Syscall arg count to debugger.*/
+ u_int td_padding3;
+ u_int td_padding4;
uintptr_t td_rb_list; /* (k) Robust list head. */
uintptr_t td_rbp_list; /* (k) Robust priv list head. */
uintptr_t td_rb_inact; /* (k) Current in-action mutex loc. */
@@ -343,6 +344,8 @@ struct thread {
sbintime_t td_sleeptimo; /* (t) Sleep timeout. */
sigqueue_t td_sigqueue; /* (c) Sigs arrived, not delivered. */
#define td_siglist td_sigqueue.sq_signals
+ struct syscall_args td_sa; /* (kx) Syscall parameters. Copied on
+ fork for child tracing. */
};
struct thread0_storage {
@@ -1051,7 +1054,7 @@ void userret(struct thread *, struct trapframe *);
void cpu_exit(struct thread *);
void exit1(struct thread *, int, int) __dead2;
void cpu_copy_thread(struct thread *td, struct thread *td0);
-int cpu_fetch_syscall_args(struct thread *td, struct syscall_args *sa);
+int cpu_fetch_syscall_args(struct thread *td);
void cpu_fork(struct thread *, struct proc *, struct thread *, int);
void cpu_fork_kthread_handler(struct thread *, void (*)(void *), void *);
void cpu_set_syscall_retval(struct thread *, int);
diff --git a/sys/sys/sysent.h b/sys/sys/sysent.h
index 8313fc0..f1f4590 100644
--- a/sys/sys/sysent.h
+++ b/sys/sys/sysent.h
@@ -119,8 +119,7 @@ struct sysentvec {
u_long *sv_maxssiz;
u_int sv_flags;
void (*sv_set_syscall_retval)(struct thread *, int);
- int (*sv_fetch_syscall_args)(struct thread *, struct
- syscall_args *);
+ int (*sv_fetch_syscall_args)(struct thread *);
const char **sv_syscallnames;
vm_offset_t sv_timekeep_base;
vm_offset_t sv_shared_page_base;
OpenPOWER on IntegriCloud