Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Sep 2014 07:53:32 +0000 (UTC)
From:      "Bjoern A. Zeeb" <bz@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r272021 - in stable/10/sys: amd64/linux32 i386/linux
Message-ID:  <201409230753.s8N7rW54025082@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bz
Date: Tue Sep 23 07:53:32 2014
New Revision: 272021
URL: http://svnweb.freebsd.org/changeset/base/272021

Log:
  This is a direct commit rather than an MFC of r271744.
  
    Re-gen after r272020 (r271743 in head) implementing most of
    timer_{create,settime,gettime,getoverrun,delete}.
  
  Approved by:	re (gjb)
  Sponsored by:	DARPA/AFRL

Modified:
  stable/10/sys/amd64/linux32/linux32_proto.h
  stable/10/sys/amd64/linux32/linux32_syscall.h
  stable/10/sys/amd64/linux32/linux32_syscalls.c
  stable/10/sys/amd64/linux32/linux32_sysent.c
  stable/10/sys/amd64/linux32/linux32_systrace_args.c
  stable/10/sys/i386/linux/linux_proto.h
  stable/10/sys/i386/linux/linux_syscall.h
  stable/10/sys/i386/linux/linux_syscalls.c
  stable/10/sys/i386/linux/linux_sysent.c
  stable/10/sys/i386/linux/linux_systrace_args.c

Modified: stable/10/sys/amd64/linux32/linux32_proto.h
==============================================================================
--- stable/10/sys/amd64/linux32/linux32_proto.h	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/amd64/linux32/linux32_proto.h	Tue Sep 23 07:53:32 2014	(r272021)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 255675 2013-09-18 18:48:33Z rdivacky 
+ * created from FreeBSD: stable/10/sys/amd64/linux32/syscalls.master 272020 2014-09-23 07:50:04Z bz 
  */
 
 #ifndef _LINUX_SYSPROTO_H_
@@ -781,19 +781,25 @@ struct linux_set_tid_address_args {
 	char tidptr_l_[PADL_(int *)]; int * tidptr; char tidptr_r_[PADR_(int *)];
 };
 struct linux_timer_create_args {
-	register_t dummy;
+	char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)];
+	char evp_l_[PADL_(struct sigevent *)]; struct sigevent * evp; char evp_r_[PADR_(struct sigevent *)];
+	char timerid_l_[PADL_(l_timer_t *)]; l_timer_t * timerid; char timerid_r_[PADR_(l_timer_t *)];
 };
 struct linux_timer_settime_args {
-	register_t dummy;
+	char timerid_l_[PADL_(l_timer_t)]; l_timer_t timerid; char timerid_r_[PADR_(l_timer_t)];
+	char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
+	char new_l_[PADL_(const struct itimerspec *)]; const struct itimerspec * new; char new_r_[PADR_(const struct itimerspec *)];
+	char old_l_[PADL_(struct itimerspec *)]; struct itimerspec * old; char old_r_[PADR_(struct itimerspec *)];
 };
 struct linux_timer_gettime_args {
-	register_t dummy;
+	char timerid_l_[PADL_(l_timer_t)]; l_timer_t timerid; char timerid_r_[PADR_(l_timer_t)];
+	char setting_l_[PADL_(struct itimerspec *)]; struct itimerspec * setting; char setting_r_[PADR_(struct itimerspec *)];
 };
 struct linux_timer_getoverrun_args {
-	register_t dummy;
+	char timerid_l_[PADL_(l_timer_t)]; l_timer_t timerid; char timerid_r_[PADR_(l_timer_t)];
 };
 struct linux_timer_delete_args {
-	register_t dummy;
+	char timerid_l_[PADL_(l_timer_t)]; l_timer_t timerid; char timerid_r_[PADR_(l_timer_t)];
 };
 struct linux_clock_settime_args {
 	char which_l_[PADL_(clockid_t)]; clockid_t which; char which_r_[PADR_(clockid_t)];

Modified: stable/10/sys/amd64/linux32/linux32_syscall.h
==============================================================================
--- stable/10/sys/amd64/linux32/linux32_syscall.h	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/amd64/linux32/linux32_syscall.h	Tue Sep 23 07:53:32 2014	(r272021)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 255675 2013-09-18 18:48:33Z rdivacky 
+ * created from FreeBSD: stable/10/sys/amd64/linux32/syscalls.master 272020 2014-09-23 07:50:04Z bz 
  */
 
 #define	LINUX_SYS_exit	1

Modified: stable/10/sys/amd64/linux32/linux32_syscalls.c
==============================================================================
--- stable/10/sys/amd64/linux32/linux32_syscalls.c	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/amd64/linux32/linux32_syscalls.c	Tue Sep 23 07:53:32 2014	(r272021)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 255675 2013-09-18 18:48:33Z rdivacky 
+ * created from FreeBSD: stable/10/sys/amd64/linux32/syscalls.master 272020 2014-09-23 07:50:04Z bz 
  */
 
 const char *linux_syscallnames[] = {

Modified: stable/10/sys/amd64/linux32/linux32_sysent.c
==============================================================================
--- stable/10/sys/amd64/linux32/linux32_sysent.c	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/amd64/linux32/linux32_sysent.c	Tue Sep 23 07:53:32 2014	(r272021)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 255675 2013-09-18 18:48:33Z rdivacky 
+ * created from FreeBSD: stable/10/sys/amd64/linux32/syscalls.master 272020 2014-09-23 07:50:04Z bz 
  */
 
 #include "opt_compat.h"
@@ -278,11 +278,11 @@ struct sysent linux_sysent[] = {
 	{ 0, (sy_call_t *)linux_epoll_wait, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 256 = linux_epoll_wait */
 	{ 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 257 = linux_remap_file_pages */
 	{ AS(linux_set_tid_address_args), (sy_call_t *)linux_set_tid_address, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 258 = linux_set_tid_address */
-	{ 0, (sy_call_t *)linux_timer_create, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 259 = linux_timer_create */
-	{ 0, (sy_call_t *)linux_timer_settime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 260 = linux_timer_settime */
-	{ 0, (sy_call_t *)linux_timer_gettime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 261 = linux_timer_gettime */
-	{ 0, (sy_call_t *)linux_timer_getoverrun, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 262 = linux_timer_getoverrun */
-	{ 0, (sy_call_t *)linux_timer_delete, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 263 = linux_timer_delete */
+	{ AS(linux_timer_create_args), (sy_call_t *)linux_timer_create, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 259 = linux_timer_create */
+	{ AS(linux_timer_settime_args), (sy_call_t *)linux_timer_settime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 260 = linux_timer_settime */
+	{ AS(linux_timer_gettime_args), (sy_call_t *)linux_timer_gettime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 261 = linux_timer_gettime */
+	{ AS(linux_timer_getoverrun_args), (sy_call_t *)linux_timer_getoverrun, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 262 = linux_timer_getoverrun */
+	{ AS(linux_timer_delete_args), (sy_call_t *)linux_timer_delete, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 263 = linux_timer_delete */
 	{ AS(linux_clock_settime_args), (sy_call_t *)linux_clock_settime, AUE_CLOCK_SETTIME, NULL, 0, 0, 0, SY_THR_STATIC },	/* 264 = linux_clock_settime */
 	{ AS(linux_clock_gettime_args), (sy_call_t *)linux_clock_gettime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 265 = linux_clock_gettime */
 	{ AS(linux_clock_getres_args), (sy_call_t *)linux_clock_getres, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 266 = linux_clock_getres */

Modified: stable/10/sys/amd64/linux32/linux32_systrace_args.c
==============================================================================
--- stable/10/sys/amd64/linux32/linux32_systrace_args.c	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/amd64/linux32/linux32_systrace_args.c	Tue Sep 23 07:53:32 2014	(r272021)
@@ -1720,27 +1720,43 @@ systrace_args(int sysnum, void *params, 
 	}
 	/* linux_timer_create */
 	case 259: {
-		*n_args = 0;
+		struct linux_timer_create_args *p = params;
+		iarg[0] = p->clock_id; /* clockid_t */
+		uarg[1] = (intptr_t) p->evp; /* struct sigevent * */
+		uarg[2] = (intptr_t) p->timerid; /* l_timer_t * */
+		*n_args = 3;
 		break;
 	}
 	/* linux_timer_settime */
 	case 260: {
-		*n_args = 0;
+		struct linux_timer_settime_args *p = params;
+		iarg[0] = p->timerid; /* l_timer_t */
+		iarg[1] = p->flags; /* l_int */
+		uarg[2] = (intptr_t) p->new; /* const struct itimerspec * */
+		uarg[3] = (intptr_t) p->old; /* struct itimerspec * */
+		*n_args = 4;
 		break;
 	}
 	/* linux_timer_gettime */
 	case 261: {
-		*n_args = 0;
+		struct linux_timer_gettime_args *p = params;
+		iarg[0] = p->timerid; /* l_timer_t */
+		uarg[1] = (intptr_t) p->setting; /* struct itimerspec * */
+		*n_args = 2;
 		break;
 	}
 	/* linux_timer_getoverrun */
 	case 262: {
-		*n_args = 0;
+		struct linux_timer_getoverrun_args *p = params;
+		iarg[0] = p->timerid; /* l_timer_t */
+		*n_args = 1;
 		break;
 	}
 	/* linux_timer_delete */
 	case 263: {
-		*n_args = 0;
+		struct linux_timer_delete_args *p = params;
+		iarg[0] = p->timerid; /* l_timer_t */
+		*n_args = 1;
 		break;
 	}
 	/* linux_clock_settime */
@@ -4829,18 +4845,71 @@ systrace_entry_setargdesc(int sysnum, in
 		break;
 	/* linux_timer_create */
 	case 259:
+		switch(ndx) {
+		case 0:
+			p = "clockid_t";
+			break;
+		case 1:
+			p = "struct sigevent *";
+			break;
+		case 2:
+			p = "l_timer_t *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_timer_settime */
 	case 260:
+		switch(ndx) {
+		case 0:
+			p = "l_timer_t";
+			break;
+		case 1:
+			p = "l_int";
+			break;
+		case 2:
+			p = "const struct itimerspec *";
+			break;
+		case 3:
+			p = "struct itimerspec *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_timer_gettime */
 	case 261:
+		switch(ndx) {
+		case 0:
+			p = "l_timer_t";
+			break;
+		case 1:
+			p = "struct itimerspec *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_timer_getoverrun */
 	case 262:
+		switch(ndx) {
+		case 0:
+			p = "l_timer_t";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_timer_delete */
 	case 263:
+		switch(ndx) {
+		case 0:
+			p = "l_timer_t";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_clock_settime */
 	case 264:
@@ -6413,14 +6482,29 @@ systrace_return_setargdesc(int sysnum, i
 		break;
 	/* linux_timer_create */
 	case 259:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_timer_settime */
 	case 260:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_timer_gettime */
 	case 261:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_timer_getoverrun */
 	case 262:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_timer_delete */
 	case 263:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_clock_settime */
 	case 264:
 		if (ndx == 0 || ndx == 1)

Modified: stable/10/sys/i386/linux/linux_proto.h
==============================================================================
--- stable/10/sys/i386/linux/linux_proto.h	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/i386/linux/linux_proto.h	Tue Sep 23 07:53:32 2014	(r272021)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/i386/linux/syscalls.master 255675 2013-09-18 18:48:33Z rdivacky 
+ * created from FreeBSD: stable/10/sys/i386/linux/syscalls.master 272020 2014-09-23 07:50:04Z bz 
  */
 
 #ifndef _LINUX_SYSPROTO_H_
@@ -787,6 +787,7 @@ struct linux_timer_create_args {
 };
 struct linux_timer_settime_args {
 	char timerid_l_[PADL_(l_timer_t)]; l_timer_t timerid; char timerid_r_[PADR_(l_timer_t)];
+	char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 	char new_l_[PADL_(const struct itimerspec *)]; const struct itimerspec * new; char new_r_[PADR_(const struct itimerspec *)];
 	char old_l_[PADL_(struct itimerspec *)]; struct itimerspec * old; char old_r_[PADR_(struct itimerspec *)];
 };

Modified: stable/10/sys/i386/linux/linux_syscall.h
==============================================================================
--- stable/10/sys/i386/linux/linux_syscall.h	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/i386/linux/linux_syscall.h	Tue Sep 23 07:53:32 2014	(r272021)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/i386/linux/syscalls.master 255675 2013-09-18 18:48:33Z rdivacky 
+ * created from FreeBSD: stable/10/sys/i386/linux/syscalls.master 272020 2014-09-23 07:50:04Z bz 
  */
 
 #define	LINUX_SYS_exit	1

Modified: stable/10/sys/i386/linux/linux_syscalls.c
==============================================================================
--- stable/10/sys/i386/linux/linux_syscalls.c	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/i386/linux/linux_syscalls.c	Tue Sep 23 07:53:32 2014	(r272021)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/i386/linux/syscalls.master 255675 2013-09-18 18:48:33Z rdivacky 
+ * created from FreeBSD: stable/10/sys/i386/linux/syscalls.master 272020 2014-09-23 07:50:04Z bz 
  */
 
 const char *linux_syscallnames[] = {

Modified: stable/10/sys/i386/linux/linux_sysent.c
==============================================================================
--- stable/10/sys/i386/linux/linux_sysent.c	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/i386/linux/linux_sysent.c	Tue Sep 23 07:53:32 2014	(r272021)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/i386/linux/syscalls.master 255675 2013-09-18 18:48:33Z rdivacky 
+ * created from FreeBSD: stable/10/sys/i386/linux/syscalls.master 272020 2014-09-23 07:50:04Z bz 
  */
 
 #include <sys/param.h>

Modified: stable/10/sys/i386/linux/linux_systrace_args.c
==============================================================================
--- stable/10/sys/i386/linux/linux_systrace_args.c	Tue Sep 23 07:50:04 2014	(r272020)
+++ stable/10/sys/i386/linux/linux_systrace_args.c	Tue Sep 23 07:53:32 2014	(r272021)
@@ -1781,9 +1781,10 @@ systrace_args(int sysnum, void *params, 
 	case 260: {
 		struct linux_timer_settime_args *p = params;
 		iarg[0] = p->timerid; /* l_timer_t */
-		uarg[1] = (intptr_t) p->new; /* const struct itimerspec * */
-		uarg[2] = (intptr_t) p->old; /* struct itimerspec * */
-		*n_args = 3;
+		iarg[1] = p->flags; /* l_int */
+		uarg[2] = (intptr_t) p->new; /* const struct itimerspec * */
+		uarg[3] = (intptr_t) p->old; /* struct itimerspec * */
+		*n_args = 4;
 		break;
 	}
 	/* linux_timer_gettime */
@@ -5012,9 +5013,12 @@ systrace_entry_setargdesc(int sysnum, in
 			p = "l_timer_t";
 			break;
 		case 1:
-			p = "const struct itimerspec *";
+			p = "l_int";
 			break;
 		case 2:
+			p = "const struct itimerspec *";
+			break;
+		case 3:
 			p = "struct itimerspec *";
 			break;
 		default:



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