Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 27 Jun 2004 02:08:23 GMT
From:      David Xu <davidxu@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 55875 for review
Message-ID:  <200406270208.i5R28Nq2084364@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=55875

Change 55875 by davidxu@davidxu_alona on 2004/06/27 02:08:21

	Change kse_switchin interface. Add syscall ttrace.

Affected files ...

.. //depot/projects/davidxu_ksedbg/src/sys/kern/init_sysent.c#2 edit
.. //depot/projects/davidxu_ksedbg/src/sys/kern/syscalls.c#2 edit
.. //depot/projects/davidxu_ksedbg/src/sys/kern/syscalls.master#2 edit
.. //depot/projects/davidxu_ksedbg/src/sys/sys/syscall.h#2 edit
.. //depot/projects/davidxu_ksedbg/src/sys/sys/syscall.mk#2 edit
.. //depot/projects/davidxu_ksedbg/src/sys/sys/sysproto.h#2 edit

Differences ...

==== //depot/projects/davidxu_ksedbg/src/sys/kern/init_sysent.c#2 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/kern/init_sysent.c,v 1.172 2004/06/22 04:36:24 rwatson Exp $
+ * $FreeBSD$
  * created from FreeBSD: src/sys/kern/syscalls.master,v 1.173 2004/06/22 04:34:55 rwatson Exp 
  */
 
@@ -472,4 +472,5 @@
 	{ SYF_MPSAFE | AS(ksem_timedwait_args), (sy_call_t *)lkmressys },	/* 441 = ksem_timedwait */
 	{ SYF_MPSAFE | AS(thr_suspend_args), (sy_call_t *)thr_suspend },	/* 442 = thr_suspend */
 	{ SYF_MPSAFE | AS(thr_wake_args), (sy_call_t *)thr_wake },	/* 443 = thr_wake */
+	{ AS(ttrace_args), (sy_call_t *)ttrace },	/* 444 = ttrace */
 };

==== //depot/projects/davidxu_ksedbg/src/sys/kern/syscalls.c#2 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call names.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/kern/syscalls.c,v 1.158 2004/06/22 04:36:25 rwatson Exp $
+ * $FreeBSD$
  * created from FreeBSD: src/sys/kern/syscalls.master,v 1.173 2004/06/22 04:34:55 rwatson Exp 
  */
 
@@ -451,4 +451,5 @@
 	"ksem_timedwait",			/* 441 = ksem_timedwait */
 	"thr_suspend",			/* 442 = thr_suspend */
 	"thr_wake",			/* 443 = thr_wake */
+	"ttrace",			/* 444 = ttrace */
 };

==== //depot/projects/davidxu_ksedbg/src/sys/kern/syscalls.master#2 (text+ko) ====

@@ -626,10 +626,12 @@
 		    int attrnamespace, void *data, size_t nbytes); }
 439	STD	{ ssize_t extattr_list_link(const char *path, \
 		    int attrnamespace, void *data, size_t nbytes); }
-440	MSTD	{ int kse_switchin(const struct __mcontext *mcp, \
-		    long val, long *loc); }
+440	MSTD	{ int kse_switchin(struct kse_thr_mailbox *tmbx, \
+		    int flags); }
 441	MNOSTD	{ int ksem_timedwait(semid_t id, struct timespec *abstime); }
 442	MSTD	{ int thr_suspend(const struct timespec *timeout); }
 443	MSTD	{ int thr_wake(thr_id_t id); }
+444	STD	{ int ttrace(int req, pid_t pid, lwpid_t tid, \
+		    caddr_t addr, int data); }
 ; Please copy any additions and changes to the following compatability tables:
 ; sys/compat/freebsd32/syscalls.master

==== //depot/projects/davidxu_ksedbg/src/sys/sys/syscall.h#2 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call numbers.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/sys/syscall.h,v 1.156 2004/06/22 04:36:25 rwatson Exp $
+ * $FreeBSD$
  * created from FreeBSD: src/sys/kern/syscalls.master,v 1.173 2004/06/22 04:34:55 rwatson Exp 
  */
 
@@ -356,4 +356,5 @@
 #define	SYS_ksem_timedwait	441
 #define	SYS_thr_suspend	442
 #define	SYS_thr_wake	443
-#define	SYS_MAXSYSCALL	444
+#define	SYS_ttrace	444
+#define	SYS_MAXSYSCALL	445

==== //depot/projects/davidxu_ksedbg/src/sys/sys/syscall.mk#2 (text+ko) ====

@@ -1,6 +1,6 @@
 # FreeBSD system call names.
 # DO NOT EDIT-- this file is automatically generated.
-# $FreeBSD: src/sys/sys/syscall.mk,v 1.111 2004/06/22 04:36:25 rwatson Exp $
+# $FreeBSD$
 # created from FreeBSD: src/sys/kern/syscalls.master,v 1.173 2004/06/22 04:34:55 rwatson Exp 
 MIASM =  \
 	syscall.o \
@@ -297,4 +297,5 @@
 	kse_switchin.o \
 	ksem_timedwait.o \
 	thr_suspend.o \
-	thr_wake.o
+	thr_wake.o \
+	ttrace.o

==== //depot/projects/davidxu_ksedbg/src/sys/sys/sysproto.h#2 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call prototypes.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/sys/sysproto.h,v 1.155 2004/06/22 04:36:25 rwatson Exp $
+ * $FreeBSD$
  * created from FreeBSD: src/sys/kern/syscalls.master,v 1.173 2004/06/22 04:34:55 rwatson Exp 
  */
 
@@ -1289,9 +1289,8 @@
 	char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)];
 };
 struct kse_switchin_args {
-	char mcp_l_[PADL_(const struct __mcontext *)]; const struct __mcontext * mcp; char mcp_r_[PADR_(const struct __mcontext *)];
-	char val_l_[PADL_(long)]; long val; char val_r_[PADR_(long)];
-	char loc_l_[PADL_(long *)]; long * loc; char loc_r_[PADR_(long *)];
+	char tmbx_l_[PADL_(struct kse_thr_mailbox *)]; struct kse_thr_mailbox * tmbx; char tmbx_r_[PADR_(struct kse_thr_mailbox *)];
+	char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)];
 };
 struct ksem_timedwait_args {
 	char id_l_[PADL_(semid_t)]; semid_t id; char id_r_[PADR_(semid_t)];
@@ -1303,6 +1302,13 @@
 struct thr_wake_args {
 	char id_l_[PADL_(thr_id_t)]; thr_id_t id; char id_r_[PADR_(thr_id_t)];
 };
+struct ttrace_args {
+	char req_l_[PADL_(int)]; int req; char req_r_[PADR_(int)];
+	char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)];
+	char tid_l_[PADL_(lwpid_t)]; lwpid_t tid; char tid_r_[PADR_(lwpid_t)];
+	char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)];
+	char data_l_[PADL_(int)]; int data; char data_r_[PADR_(int)];
+};
 int	nosys(struct thread *, struct nosys_args *);
 void	sys_exit(struct thread *, struct sys_exit_args *);
 int	fork(struct thread *, struct fork_args *);
@@ -1597,6 +1603,7 @@
 int	ksem_timedwait(struct thread *, struct ksem_timedwait_args *);
 int	thr_suspend(struct thread *, struct thr_suspend_args *);
 int	thr_wake(struct thread *, struct thr_wake_args *);
+int	ttrace(struct thread *, struct ttrace_args *);
 
 #ifdef COMPAT_43
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200406270208.i5R28Nq2084364>