Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Aug 2020 20:10:11 +0000 (UTC)
From:      Edward Tomasz Napierala <trasz@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Subject:   svn commit: r364524 - in stable/12/sys: amd64/linux32 i386/linux
Message-ID:  <202008232010.07NKABi8009695@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: trasz
Date: Sun Aug 23 20:10:10 2020
New Revision: 364524
URL: https://svnweb.freebsd.org/changeset/base/364524

Log:
  MFC r356231:
  
  Regen after r356229.
  
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/sys/amd64/linux32/linux32_proto.h
  stable/12/sys/amd64/linux32/linux32_sysent.c
  stable/12/sys/amd64/linux32/linux32_systrace_args.c
  stable/12/sys/i386/linux/linux_proto.h
  stable/12/sys/i386/linux/linux_sysent.c
  stable/12/sys/i386/linux/linux_systrace_args.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/amd64/linux32/linux32_proto.h
==============================================================================
--- stable/12/sys/amd64/linux32/linux32_proto.h	Sun Aug 23 20:08:49 2020	(r364523)
+++ stable/12/sys/amd64/linux32/linux32_proto.h	Sun Aug 23 20:10:10 2020	(r364524)
@@ -1044,7 +1044,9 @@ struct linux_move_pages_args {
 	register_t dummy;
 };
 struct linux_getcpu_args {
-	register_t dummy;
+	char cpu_l_[PADL_(l_uint *)]; l_uint * cpu; char cpu_r_[PADR_(l_uint *)];
+	char node_l_[PADL_(l_uint *)]; l_uint * node; char node_r_[PADR_(l_uint *)];
+	char cache_l_[PADL_(void *)]; void * cache; char cache_r_[PADR_(void *)];
 };
 struct linux_epoll_pwait_args {
 	char epfd_l_[PADL_(l_int)]; l_int epfd; char epfd_r_[PADR_(l_int)];

Modified: stable/12/sys/amd64/linux32/linux32_sysent.c
==============================================================================
--- stable/12/sys/amd64/linux32/linux32_sysent.c	Sun Aug 23 20:08:49 2020	(r364523)
+++ stable/12/sys/amd64/linux32/linux32_sysent.c	Sun Aug 23 20:10:10 2020	(r364524)
@@ -335,7 +335,7 @@ struct sysent linux32_sysent[] = {
 	{ 0, (sy_call_t *)linux_tee, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },		/* 315 = linux_tee */
 	{ 0, (sy_call_t *)linux_vmsplice, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 316 = linux_vmsplice */
 	{ 0, (sy_call_t *)linux_move_pages, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 317 = linux_move_pages */
-	{ 0, (sy_call_t *)linux_getcpu, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 318 = linux_getcpu */
+	{ AS(linux_getcpu_args), (sy_call_t *)linux_getcpu, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 318 = linux_getcpu */
 	{ AS(linux_epoll_pwait_args), (sy_call_t *)linux_epoll_pwait, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 319 = linux_epoll_pwait */
 	{ AS(linux_utimensat_args), (sy_call_t *)linux_utimensat, AUE_FUTIMESAT, NULL, 0, 0, 0, SY_THR_STATIC },	/* 320 = linux_utimensat */
 	{ 0, (sy_call_t *)linux_signalfd, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 321 = linux_signalfd */

Modified: stable/12/sys/amd64/linux32/linux32_systrace_args.c
==============================================================================
--- stable/12/sys/amd64/linux32/linux32_systrace_args.c	Sun Aug 23 20:08:49 2020	(r364523)
+++ stable/12/sys/amd64/linux32/linux32_systrace_args.c	Sun Aug 23 20:10:10 2020	(r364524)
@@ -2152,7 +2152,11 @@ systrace_args(int sysnum, void *params, uint64_t *uarg
 	}
 	/* linux_getcpu */
 	case 318: {
-		*n_args = 0;
+		struct linux_getcpu_args *p = params;
+		uarg[0] = (intptr_t) p->cpu; /* l_uint * */
+		uarg[1] = (intptr_t) p->node; /* l_uint * */
+		uarg[2] = (intptr_t) p->cache; /* void * */
+		*n_args = 3;
 		break;
 	}
 	/* linux_epoll_pwait */
@@ -6235,6 +6239,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d
 		break;
 	/* linux_getcpu */
 	case 318:
+		switch(ndx) {
+		case 0:
+			p = "userland l_uint *";
+			break;
+		case 1:
+			p = "userland l_uint *";
+			break;
+		case 2:
+			p = "userland void *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_epoll_pwait */
 	case 319:
@@ -8730,6 +8747,9 @@ systrace_return_setargdesc(int sysnum, int ndx, char *
 	case 317:
 	/* linux_getcpu */
 	case 318:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_epoll_pwait */
 	case 319:
 		if (ndx == 0 || ndx == 1)

Modified: stable/12/sys/i386/linux/linux_proto.h
==============================================================================
--- stable/12/sys/i386/linux/linux_proto.h	Sun Aug 23 20:08:49 2020	(r364523)
+++ stable/12/sys/i386/linux/linux_proto.h	Sun Aug 23 20:10:10 2020	(r364524)
@@ -1053,7 +1053,9 @@ struct linux_move_pages_args {
 	register_t dummy;
 };
 struct linux_getcpu_args {
-	register_t dummy;
+	char cpu_l_[PADL_(l_uint *)]; l_uint * cpu; char cpu_r_[PADR_(l_uint *)];
+	char node_l_[PADL_(l_uint *)]; l_uint * node; char node_r_[PADR_(l_uint *)];
+	char cache_l_[PADL_(void *)]; void * cache; char cache_r_[PADR_(void *)];
 };
 struct linux_epoll_pwait_args {
 	char epfd_l_[PADL_(l_int)]; l_int epfd; char epfd_r_[PADR_(l_int)];

Modified: stable/12/sys/i386/linux/linux_sysent.c
==============================================================================
--- stable/12/sys/i386/linux/linux_sysent.c	Sun Aug 23 20:08:49 2020	(r364523)
+++ stable/12/sys/i386/linux/linux_sysent.c	Sun Aug 23 20:10:10 2020	(r364524)
@@ -335,7 +335,7 @@ struct sysent linux_sysent[] = {
 	{ 0, (sy_call_t *)linux_tee, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },		/* 315 = linux_tee */
 	{ 0, (sy_call_t *)linux_vmsplice, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 316 = linux_vmsplice */
 	{ 0, (sy_call_t *)linux_move_pages, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 317 = linux_move_pages */
-	{ 0, (sy_call_t *)linux_getcpu, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 318 = linux_getcpu */
+	{ AS(linux_getcpu_args), (sy_call_t *)linux_getcpu, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 318 = linux_getcpu */
 	{ AS(linux_epoll_pwait_args), (sy_call_t *)linux_epoll_pwait, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 319 = linux_epoll_pwait */
 	{ AS(linux_utimensat_args), (sy_call_t *)linux_utimensat, AUE_FUTIMESAT, NULL, 0, 0, 0, SY_THR_STATIC },	/* 320 = linux_utimensat */
 	{ 0, (sy_call_t *)linux_signalfd, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 321 = linux_signalfd */

Modified: stable/12/sys/i386/linux/linux_systrace_args.c
==============================================================================
--- stable/12/sys/i386/linux/linux_systrace_args.c	Sun Aug 23 20:08:49 2020	(r364523)
+++ stable/12/sys/i386/linux/linux_systrace_args.c	Sun Aug 23 20:10:10 2020	(r364524)
@@ -2219,7 +2219,11 @@ systrace_args(int sysnum, void *params, uint64_t *uarg
 	}
 	/* linux_getcpu */
 	case 318: {
-		*n_args = 0;
+		struct linux_getcpu_args *p = params;
+		uarg[0] = (intptr_t) p->cpu; /* l_uint * */
+		uarg[1] = (intptr_t) p->node; /* l_uint * */
+		uarg[2] = (intptr_t) p->cache; /* void * */
+		*n_args = 3;
 		break;
 	}
 	/* linux_epoll_pwait */
@@ -6428,6 +6432,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d
 		break;
 	/* linux_getcpu */
 	case 318:
+		switch(ndx) {
+		case 0:
+			p = "userland l_uint *";
+			break;
+		case 1:
+			p = "userland l_uint *";
+			break;
+		case 2:
+			p = "userland void *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_epoll_pwait */
 	case 319:
@@ -8964,6 +8981,9 @@ systrace_return_setargdesc(int sysnum, int ndx, char *
 	case 317:
 	/* linux_getcpu */
 	case 318:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_epoll_pwait */
 	case 319:
 		if (ndx == 0 || ndx == 1)



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