svn commit: r329323 - head/sys/compat/freebsd32

Brooks Davis brooks at FreeBSD.org
Thu Feb 15 17:27:21 UTC 2018


Author: brooks
Date: Thu Feb 15 17:27:19 2018
New Revision: 329323
URL: https://svnweb.freebsd.org/changeset/base/329323

Log:
  Regen after r329322: Fix getdirentries(2) under 32-bit compat.
  
  Sponsored by:	DARPA, AFRL
  Differential Revision:	https://reviews.freebsd.org/D14379

Modified:
  head/sys/compat/freebsd32/freebsd32_proto.h
  head/sys/compat/freebsd32/freebsd32_syscall.h
  head/sys/compat/freebsd32/freebsd32_syscalls.c
  head/sys/compat/freebsd32/freebsd32_sysent.c
  head/sys/compat/freebsd32/freebsd32_systrace_args.c

Modified: head/sys/compat/freebsd32/freebsd32_proto.h
==============================================================================
--- head/sys/compat/freebsd32/freebsd32_proto.h	Thu Feb 15 17:26:30 2018	(r329322)
+++ head/sys/compat/freebsd32/freebsd32_proto.h	Thu Feb 15 17:27:19 2018	(r329323)
@@ -680,12 +680,6 @@ struct freebsd32_fhstat_args {
 	char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)];
 	char sb_l_[PADL_(struct stat32 *)]; struct stat32 * sb; char sb_r_[PADR_(struct stat32 *)];
 };
-struct freebsd32_getdirentries_args {
-	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
-	char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)];
-	char count_l_[PADL_(size_t)]; size_t count; char count_r_[PADR_(size_t)];
-	char basep_l_[PADL_(int32_t *)]; int32_t * basep; char basep_r_[PADR_(int32_t *)];
-};
 struct freebsd32_kevent_args {
 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
 	char changelist_l_[PADL_(const struct kevent32 *)]; const struct kevent32 * changelist; char changelist_r_[PADR_(const struct kevent32 *)];
@@ -840,7 +834,6 @@ int	freebsd32_utimensat(struct thread *, struct freebs
 int	freebsd32_fstat(struct thread *, struct freebsd32_fstat_args *);
 int	freebsd32_fstatat(struct thread *, struct freebsd32_fstatat_args *);
 int	freebsd32_fhstat(struct thread *, struct freebsd32_fhstat_args *);
-int	freebsd32_getdirentries(struct thread *, struct freebsd32_getdirentries_args *);
 int	freebsd32_kevent(struct thread *, struct freebsd32_kevent_args *);
 int	freebsd32_cpuset_getdomain(struct thread *, struct freebsd32_cpuset_getdomain_args *);
 int	freebsd32_cpuset_setdomain(struct thread *, struct freebsd32_cpuset_setdomain_args *);
@@ -1389,7 +1382,6 @@ int	freebsd11_freebsd32_mknodat(struct thread *, struc
 #define	FREEBSD32_SYS_AUE_freebsd32_fstat	AUE_FSTAT
 #define	FREEBSD32_SYS_AUE_freebsd32_fstatat	AUE_FSTATAT
 #define	FREEBSD32_SYS_AUE_freebsd32_fhstat	AUE_FHSTAT
-#define	FREEBSD32_SYS_AUE_freebsd32_getdirentries	AUE_GETDIRENTRIES
 #define	FREEBSD32_SYS_AUE_freebsd32_kevent	AUE_KEVENT
 #define	FREEBSD32_SYS_AUE_freebsd32_cpuset_getdomain	AUE_NULL
 #define	FREEBSD32_SYS_AUE_freebsd32_cpuset_setdomain	AUE_NULL

Modified: head/sys/compat/freebsd32/freebsd32_syscall.h
==============================================================================
--- head/sys/compat/freebsd32/freebsd32_syscall.h	Thu Feb 15 17:26:30 2018	(r329322)
+++ head/sys/compat/freebsd32/freebsd32_syscall.h	Thu Feb 15 17:27:19 2018	(r329323)
@@ -459,7 +459,7 @@
 #define	FREEBSD32_SYS_freebsd32_fstat	551
 #define	FREEBSD32_SYS_freebsd32_fstatat	552
 #define	FREEBSD32_SYS_freebsd32_fhstat	553
-#define	FREEBSD32_SYS_freebsd32_getdirentries	554
+#define	FREEBSD32_SYS_getdirentries	554
 #define	FREEBSD32_SYS_statfs	555
 #define	FREEBSD32_SYS_fstatfs	556
 #define	FREEBSD32_SYS_getfsstat	557

Modified: head/sys/compat/freebsd32/freebsd32_syscalls.c
==============================================================================
--- head/sys/compat/freebsd32/freebsd32_syscalls.c	Thu Feb 15 17:26:30 2018	(r329322)
+++ head/sys/compat/freebsd32/freebsd32_syscalls.c	Thu Feb 15 17:27:19 2018	(r329323)
@@ -586,7 +586,7 @@ const char *freebsd32_syscallnames[] = {
 	"freebsd32_fstat",			/* 551 = freebsd32_fstat */
 	"freebsd32_fstatat",			/* 552 = freebsd32_fstatat */
 	"freebsd32_fhstat",			/* 553 = freebsd32_fhstat */
-	"freebsd32_getdirentries",			/* 554 = freebsd32_getdirentries */
+	"getdirentries",			/* 554 = getdirentries */
 	"statfs",			/* 555 = statfs */
 	"fstatfs",			/* 556 = fstatfs */
 	"getfsstat",			/* 557 = getfsstat */

Modified: head/sys/compat/freebsd32/freebsd32_sysent.c
==============================================================================
--- head/sys/compat/freebsd32/freebsd32_sysent.c	Thu Feb 15 17:26:30 2018	(r329322)
+++ head/sys/compat/freebsd32/freebsd32_sysent.c	Thu Feb 15 17:27:19 2018	(r329323)
@@ -635,7 +635,7 @@ struct sysent freebsd32_sysent[] = {
 	{ AS(freebsd32_fstat_args), (sy_call_t *)freebsd32_fstat, AUE_FSTAT, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 551 = freebsd32_fstat */
 	{ AS(freebsd32_fstatat_args), (sy_call_t *)freebsd32_fstatat, AUE_FSTATAT, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 552 = freebsd32_fstatat */
 	{ AS(freebsd32_fhstat_args), (sy_call_t *)freebsd32_fhstat, AUE_FHSTAT, NULL, 0, 0, 0, SY_THR_STATIC },	/* 553 = freebsd32_fhstat */
-	{ AS(freebsd32_getdirentries_args), (sy_call_t *)freebsd32_getdirentries, AUE_GETDIRENTRIES, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 554 = freebsd32_getdirentries */
+	{ AS(getdirentries_args), (sy_call_t *)sys_getdirentries, AUE_GETDIRENTRIES, NULL, 0, 0, 0, SY_THR_STATIC },	/* 554 = getdirentries */
 	{ AS(statfs_args), (sy_call_t *)sys_statfs, AUE_STATFS, NULL, 0, 0, 0, SY_THR_STATIC },	/* 555 = statfs */
 	{ AS(fstatfs_args), (sy_call_t *)sys_fstatfs, AUE_FSTATFS, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 556 = fstatfs */
 	{ AS(getfsstat_args), (sy_call_t *)sys_getfsstat, AUE_GETFSSTAT, NULL, 0, 0, 0, SY_THR_STATIC },	/* 557 = getfsstat */

Modified: head/sys/compat/freebsd32/freebsd32_systrace_args.c
==============================================================================
--- head/sys/compat/freebsd32/freebsd32_systrace_args.c	Thu Feb 15 17:26:30 2018	(r329322)
+++ head/sys/compat/freebsd32/freebsd32_systrace_args.c	Thu Feb 15 17:27:19 2018	(r329323)
@@ -3183,13 +3183,13 @@ systrace_args(int sysnum, void *params, uint64_t *uarg
 		*n_args = 2;
 		break;
 	}
-	/* freebsd32_getdirentries */
+	/* getdirentries */
 	case 554: {
-		struct freebsd32_getdirentries_args *p = params;
+		struct getdirentries_args *p = params;
 		iarg[0] = p->fd; /* int */
 		uarg[1] = (intptr_t) p->buf; /* char * */
 		uarg[2] = p->count; /* size_t */
-		uarg[3] = (intptr_t) p->basep; /* int32_t * */
+		uarg[3] = (intptr_t) p->basep; /* off_t * */
 		*n_args = 4;
 		break;
 	}
@@ -8626,7 +8626,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d
 			break;
 		};
 		break;
-	/* freebsd32_getdirentries */
+	/* getdirentries */
 	case 554:
 		switch(ndx) {
 		case 0:
@@ -8639,7 +8639,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d
 			p = "size_t";
 			break;
 		case 3:
-			p = "userland int32_t *";
+			p = "userland off_t *";
 			break;
 		default:
 			break;
@@ -10606,7 +10606,7 @@ systrace_return_setargdesc(int sysnum, int ndx, char *
 		if (ndx == 0 || ndx == 1)
 			p = "int";
 		break;
-	/* freebsd32_getdirentries */
+	/* getdirentries */
 	case 554:
 		if (ndx == 0 || ndx == 1)
 			p = "ssize_t";


More information about the svn-src-all mailing list