Author: cem
Date: Tue Nov 17 19:53:59 2020
New Revision: 367774
URL: https://svnweb.freebsd.org/changeset/base/367774

Log:
  'make sysent' for r367773
  
  X-MFC-With:   r367773

Modified:
  head/sys/amd64/linux/linux_proto.h
  head/sys/amd64/linux/linux_sysent.c
  head/sys/amd64/linux/linux_systrace_args.c
  head/sys/amd64/linux32/linux32_proto.h
  head/sys/amd64/linux32/linux32_sysent.c
  head/sys/amd64/linux32/linux32_systrace_args.c
  head/sys/arm64/linux/linux_proto.h
  head/sys/arm64/linux/linux_sysent.c
  head/sys/arm64/linux/linux_systrace_args.c
  head/sys/i386/linux/linux_proto.h
  head/sys/i386/linux/linux_sysent.c
  head/sys/i386/linux/linux_systrace_args.c

Modified: head/sys/amd64/linux/linux_proto.h
==============================================================================
--- head/sys/amd64/linux/linux_proto.h  Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/amd64/linux/linux_proto.h  Tue Nov 17 19:53:59 2020        
(r367774)
@@ -1143,10 +1143,16 @@ struct linux_prlimit64_args {
        char old_l_[PADL_(struct rlimit *)]; struct rlimit * old; char 
old_r_[PADR_(struct rlimit *)];
 };
 struct linux_name_to_handle_at_args {
-       register_t dummy;
+       char dirfd_l_[PADL_(l_int)]; l_int dirfd; char dirfd_r_[PADR_(l_int)];
+       char name_l_[PADL_(const char *)]; const char * name; char 
name_r_[PADR_(const char *)];
+       char handle_l_[PADL_(struct l_file_handle *)]; struct l_file_handle * 
handle; char handle_r_[PADR_(struct l_file_handle *)];
+       char mnt_id_l_[PADL_(l_int *)]; l_int * mnt_id; char 
mnt_id_r_[PADR_(l_int *)];
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_open_by_handle_at_args {
-       register_t dummy;
+       char mountdirfd_l_[PADL_(l_int)]; l_int mountdirfd; char 
mountdirfd_r_[PADR_(l_int)];
+       char handle_l_[PADL_(struct l_file_handle *)]; struct l_file_handle * 
handle; char handle_r_[PADR_(struct l_file_handle *)];
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_clock_adjtime_args {
        register_t dummy;

Modified: head/sys/amd64/linux/linux_sysent.c
==============================================================================
--- head/sys/amd64/linux/linux_sysent.c Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/amd64/linux/linux_sysent.c Tue Nov 17 19:53:59 2020        
(r367774)
@@ -320,8 +320,8 @@ struct sysent linux_sysent[] = {
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fanotify_init, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
300 = linux_fanotify_init */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fanotify_mark, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
301 = linux_fanotify_mark */
        { .sy_narg = AS(linux_prlimit64_args), .sy_call = (sy_call_t 
*)linux_prlimit64, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 302 = linux_prlimit64 */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_name_to_handle_at, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 303 = 
linux_name_to_handle_at */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_open_by_handle_at, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 304 = 
linux_open_by_handle_at */
+       { .sy_narg = AS(linux_name_to_handle_at_args), .sy_call = (sy_call_t 
*)linux_name_to_handle_at, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 303 = linux_name_to_handle_at */
+       { .sy_narg = AS(linux_open_by_handle_at_args), .sy_call = (sy_call_t 
*)linux_open_by_handle_at, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 304 = linux_open_by_handle_at */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_clock_adjtime, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
305 = linux_clock_adjtime */
        { .sy_narg = AS(linux_syncfs_args), .sy_call = (sy_call_t 
*)linux_syncfs, .sy_auevent = AUE_SYNC, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },  /* 306 = linux_syncfs */
        { .sy_narg = AS(linux_sendmmsg_args), .sy_call = (sy_call_t 
*)linux_sendmmsg, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },      /* 307 = linux_sendmmsg */

Modified: head/sys/amd64/linux/linux_systrace_args.c
==============================================================================
--- head/sys/amd64/linux/linux_systrace_args.c  Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/amd64/linux/linux_systrace_args.c  Tue Nov 17 19:53:59 2020        
(r367774)
@@ -2321,12 +2321,22 @@ systrace_args(int sysnum, void *params, uint64_t *uarg
        }
        /* linux_name_to_handle_at */
        case 303: {
-               *n_args = 0;
+               struct linux_name_to_handle_at_args *p = params;
+               iarg[0] = p->dirfd; /* l_int */
+               uarg[1] = (intptr_t) p->name; /* const char * */
+               uarg[2] = (intptr_t) p->handle; /* struct l_file_handle * */
+               uarg[3] = (intptr_t) p->mnt_id; /* l_int * */
+               iarg[4] = p->flags; /* l_int */
+               *n_args = 5;
                break;
        }
        /* linux_open_by_handle_at */
        case 304: {
-               *n_args = 0;
+               struct linux_open_by_handle_at_args *p = params;
+               iarg[0] = p->mountdirfd; /* l_int */
+               uarg[1] = (intptr_t) p->handle; /* struct l_file_handle * */
+               iarg[2] = p->flags; /* l_int */
+               *n_args = 3;
                break;
        }
        /* linux_clock_adjtime */
@@ -6340,9 +6350,41 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d
                break;
        /* linux_name_to_handle_at */
        case 303:
+               switch(ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland const char *";
+                       break;
+               case 2:
+                       p = "userland struct l_file_handle *";
+                       break;
+               case 3:
+                       p = "userland l_int *";
+                       break;
+               case 4:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_open_by_handle_at */
        case 304:
+               switch(ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland struct l_file_handle *";
+                       break;
+               case 2:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_clock_adjtime */
        case 305:
@@ -8153,8 +8195,14 @@ systrace_return_setargdesc(int sysnum, int ndx, char *
                break;
        /* linux_name_to_handle_at */
        case 303:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_open_by_handle_at */
        case 304:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_clock_adjtime */
        case 305:
        /* linux_syncfs */

Modified: head/sys/amd64/linux32/linux32_proto.h
==============================================================================
--- head/sys/amd64/linux32/linux32_proto.h      Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/amd64/linux32/linux32_proto.h      Tue Nov 17 19:53:59 2020        
(r367774)
@@ -1218,10 +1218,16 @@ struct linux_prlimit64_args {
        char old_l_[PADL_(struct rlimit *)]; struct rlimit * old; char 
old_r_[PADR_(struct rlimit *)];
 };
 struct linux_name_to_handle_at_args {
-       register_t dummy;
+       char dirfd_l_[PADL_(l_int)]; l_int dirfd; char dirfd_r_[PADR_(l_int)];
+       char name_l_[PADL_(const char *)]; const char * name; char 
name_r_[PADR_(const char *)];
+       char handle_l_[PADL_(struct l_file_handle *)]; struct l_file_handle * 
handle; char handle_r_[PADR_(struct l_file_handle *)];
+       char mnt_id_l_[PADL_(l_int *)]; l_int * mnt_id; char 
mnt_id_r_[PADR_(l_int *)];
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_open_by_handle_at_args {
-       register_t dummy;
+       char mountdirfd_l_[PADL_(l_int)]; l_int mountdirfd; char 
mountdirfd_r_[PADR_(l_int)];
+       char handle_l_[PADL_(struct l_file_handle *)]; struct l_file_handle * 
handle; char handle_r_[PADR_(struct l_file_handle *)];
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_clock_adjtime_args {
        register_t dummy;

Modified: head/sys/amd64/linux32/linux32_sysent.c
==============================================================================
--- head/sys/amd64/linux32/linux32_sysent.c     Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/amd64/linux32/linux32_sysent.c     Tue Nov 17 19:53:59 2020        
(r367774)
@@ -358,8 +358,8 @@ struct sysent linux32_sysent[] = {
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fanotify_init, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
338 = linux_fanotify_init */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fanotify_mark, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
339 = linux_fanotify_mark */
        { .sy_narg = AS(linux_prlimit64_args), .sy_call = (sy_call_t 
*)linux_prlimit64, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 340 = linux_prlimit64 */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_name_to_handle_at, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 341 = 
linux_name_to_handle_at */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_open_by_handle_at, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 342 = 
linux_open_by_handle_at */
+       { .sy_narg = AS(linux_name_to_handle_at_args), .sy_call = (sy_call_t 
*)linux_name_to_handle_at, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 341 = linux_name_to_handle_at */
+       { .sy_narg = AS(linux_open_by_handle_at_args), .sy_call = (sy_call_t 
*)linux_open_by_handle_at, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 342 = linux_open_by_handle_at */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_clock_adjtime, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
343 = linux_clock_adjtime */
        { .sy_narg = AS(linux_syncfs_args), .sy_call = (sy_call_t 
*)linux_syncfs, .sy_auevent = AUE_SYNC, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },  /* 344 = linux_syncfs */
        { .sy_narg = AS(linux_sendmmsg_args), .sy_call = (sy_call_t 
*)linux_sendmmsg, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },      /* 345 = linux_sendmmsg */

Modified: head/sys/amd64/linux32/linux32_systrace_args.c
==============================================================================
--- head/sys/amd64/linux32/linux32_systrace_args.c      Tue Nov 17 19:51:47 
2020        (r367773)
+++ head/sys/amd64/linux32/linux32_systrace_args.c      Tue Nov 17 19:53:59 
2020        (r367774)
@@ -2445,12 +2445,22 @@ systrace_args(int sysnum, void *params, uint64_t *uarg
        }
        /* linux_name_to_handle_at */
        case 341: {
-               *n_args = 0;
+               struct linux_name_to_handle_at_args *p = params;
+               iarg[0] = p->dirfd; /* l_int */
+               uarg[1] = (intptr_t) p->name; /* const char * */
+               uarg[2] = (intptr_t) p->handle; /* struct l_file_handle * */
+               uarg[3] = (intptr_t) p->mnt_id; /* l_int * */
+               iarg[4] = p->flags; /* l_int */
+               *n_args = 5;
                break;
        }
        /* linux_open_by_handle_at */
        case 342: {
-               *n_args = 0;
+               struct linux_open_by_handle_at_args *p = params;
+               iarg[0] = p->mountdirfd; /* l_int */
+               uarg[1] = (intptr_t) p->handle; /* struct l_file_handle * */
+               iarg[2] = p->flags; /* l_int */
+               *n_args = 3;
                break;
        }
        /* linux_clock_adjtime */
@@ -6970,9 +6980,41 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d
                break;
        /* linux_name_to_handle_at */
        case 341:
+               switch(ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland const char *";
+                       break;
+               case 2:
+                       p = "userland struct l_file_handle *";
+                       break;
+               case 3:
+                       p = "userland l_int *";
+                       break;
+               case 4:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_open_by_handle_at */
        case 342:
+               switch(ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland struct l_file_handle *";
+                       break;
+               case 2:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_clock_adjtime */
        case 343:
@@ -9326,8 +9368,14 @@ systrace_return_setargdesc(int sysnum, int ndx, char *
                break;
        /* linux_name_to_handle_at */
        case 341:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_open_by_handle_at */
        case 342:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_clock_adjtime */
        case 343:
        /* linux_syncfs */

Modified: head/sys/arm64/linux/linux_proto.h
==============================================================================
--- head/sys/arm64/linux/linux_proto.h  Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/arm64/linux/linux_proto.h  Tue Nov 17 19:53:59 2020        
(r367774)
@@ -967,10 +967,16 @@ struct linux_fanotify_mark_args {
        register_t dummy;
 };
 struct linux_name_to_handle_at_args {
-       register_t dummy;
+       char dirfd_l_[PADL_(l_int)]; l_int dirfd; char dirfd_r_[PADR_(l_int)];
+       char name_l_[PADL_(const char *)]; const char * name; char 
name_r_[PADR_(const char *)];
+       char handle_l_[PADL_(struct l_file_handle *)]; struct l_file_handle * 
handle; char handle_r_[PADR_(struct l_file_handle *)];
+       char mnt_id_l_[PADL_(l_int *)]; l_int * mnt_id; char 
mnt_id_r_[PADR_(l_int *)];
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_open_by_handle_at_args {
-       register_t dummy;
+       char mountdirfd_l_[PADL_(l_int)]; l_int mountdirfd; char 
mountdirfd_r_[PADR_(l_int)];
+       char handle_l_[PADL_(struct l_file_handle *)]; struct l_file_handle * 
handle; char handle_r_[PADR_(struct l_file_handle *)];
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_clock_adjtime_args {
        register_t dummy;

Modified: head/sys/arm64/linux/linux_sysent.c
==============================================================================
--- head/sys/arm64/linux/linux_sysent.c Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/arm64/linux/linux_sysent.c Tue Nov 17 19:53:59 2020        
(r367774)
@@ -281,8 +281,8 @@ struct sysent linux_sysent[] = {
        { .sy_narg = AS(linux_prlimit64_args), .sy_call = (sy_call_t 
*)linux_prlimit64, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 261 = linux_prlimit64 */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fanotify_init, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
262 = linux_fanotify_init */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fanotify_mark, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
263 = linux_fanotify_mark */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_name_to_handle_at, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 264 = 
linux_name_to_handle_at */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_open_by_handle_at, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 265 = 
linux_open_by_handle_at */
+       { .sy_narg = AS(linux_name_to_handle_at_args), .sy_call = (sy_call_t 
*)linux_name_to_handle_at, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 264 = linux_name_to_handle_at */
+       { .sy_narg = AS(linux_open_by_handle_at_args), .sy_call = (sy_call_t 
*)linux_open_by_handle_at, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 265 = linux_open_by_handle_at */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_clock_adjtime, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
266 = linux_clock_adjtime */
        { .sy_narg = AS(linux_syncfs_args), .sy_call = (sy_call_t 
*)linux_syncfs, .sy_auevent = AUE_SYNC, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },  /* 267 = linux_syncfs */
        { .sy_narg = AS(linux_setns_args), .sy_call = (sy_call_t *)linux_setns, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },    /* 268 
= linux_setns */

Modified: head/sys/arm64/linux/linux_systrace_args.c
==============================================================================
--- head/sys/arm64/linux/linux_systrace_args.c  Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/arm64/linux/linux_systrace_args.c  Tue Nov 17 19:53:59 2020        
(r367774)
@@ -1960,12 +1960,22 @@ systrace_args(int sysnum, void *params, uint64_t *uarg
        }
        /* linux_name_to_handle_at */
        case 264: {
-               *n_args = 0;
+               struct linux_name_to_handle_at_args *p = params;
+               iarg[0] = p->dirfd; /* l_int */
+               uarg[1] = (intptr_t) p->name; /* const char * */
+               uarg[2] = (intptr_t) p->handle; /* struct l_file_handle * */
+               uarg[3] = (intptr_t) p->mnt_id; /* l_int * */
+               iarg[4] = p->flags; /* l_int */
+               *n_args = 5;
                break;
        }
        /* linux_open_by_handle_at */
        case 265: {
-               *n_args = 0;
+               struct linux_open_by_handle_at_args *p = params;
+               iarg[0] = p->mountdirfd; /* l_int */
+               uarg[1] = (intptr_t) p->handle; /* struct l_file_handle * */
+               iarg[2] = p->flags; /* l_int */
+               *n_args = 3;
                break;
        }
        /* linux_clock_adjtime */
@@ -5408,9 +5418,41 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d
                break;
        /* linux_name_to_handle_at */
        case 264:
+               switch(ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland const char *";
+                       break;
+               case 2:
+                       p = "userland struct l_file_handle *";
+                       break;
+               case 3:
+                       p = "userland l_int *";
+                       break;
+               case 4:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_open_by_handle_at */
        case 265:
+               switch(ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland struct l_file_handle *";
+                       break;
+               case 2:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_clock_adjtime */
        case 266:
@@ -6923,8 +6965,14 @@ systrace_return_setargdesc(int sysnum, int ndx, char *
        case 263:
        /* linux_name_to_handle_at */
        case 264:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_open_by_handle_at */
        case 265:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_clock_adjtime */
        case 266:
        /* linux_syncfs */

Modified: head/sys/i386/linux/linux_proto.h
==============================================================================
--- head/sys/i386/linux/linux_proto.h   Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/i386/linux/linux_proto.h   Tue Nov 17 19:53:59 2020        
(r367774)
@@ -1211,10 +1211,16 @@ struct linux_prlimit64_args {
        char old_l_[PADL_(struct rlimit *)]; struct rlimit * old; char 
old_r_[PADR_(struct rlimit *)];
 };
 struct linux_name_to_handle_at_args {
-       register_t dummy;
+       char dirfd_l_[PADL_(l_int)]; l_int dirfd; char dirfd_r_[PADR_(l_int)];
+       char name_l_[PADL_(const char *)]; const char * name; char 
name_r_[PADR_(const char *)];
+       char handle_l_[PADL_(struct l_file_handle *)]; struct l_file_handle * 
handle; char handle_r_[PADR_(struct l_file_handle *)];
+       char mnt_id_l_[PADL_(l_int *)]; l_int * mnt_id; char 
mnt_id_r_[PADR_(l_int *)];
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_open_by_handle_at_args {
-       register_t dummy;
+       char mountdirfd_l_[PADL_(l_int)]; l_int mountdirfd; char 
mountdirfd_r_[PADR_(l_int)];
+       char handle_l_[PADL_(struct l_file_handle *)]; struct l_file_handle * 
handle; char handle_r_[PADR_(struct l_file_handle *)];
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_clock_adjtime_args {
        register_t dummy;

Modified: head/sys/i386/linux/linux_sysent.c
==============================================================================
--- head/sys/i386/linux/linux_sysent.c  Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/i386/linux/linux_sysent.c  Tue Nov 17 19:53:59 2020        
(r367774)
@@ -358,8 +358,8 @@ struct sysent linux_sysent[] = {
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fanotify_init, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
338 = linux_fanotify_init */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fanotify_mark, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
339 = linux_fanotify_mark */
        { .sy_narg = AS(linux_prlimit64_args), .sy_call = (sy_call_t 
*)linux_prlimit64, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 340 = linux_prlimit64 */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_name_to_handle_at, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 341 = 
linux_name_to_handle_at */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_open_by_handle_at, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 342 = 
linux_open_by_handle_at */
+       { .sy_narg = AS(linux_name_to_handle_at_args), .sy_call = (sy_call_t 
*)linux_name_to_handle_at, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 341 = linux_name_to_handle_at */
+       { .sy_narg = AS(linux_open_by_handle_at_args), .sy_call = (sy_call_t 
*)linux_open_by_handle_at, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 342 = linux_open_by_handle_at */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_clock_adjtime, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
343 = linux_clock_adjtime */
        { .sy_narg = AS(linux_syncfs_args), .sy_call = (sy_call_t 
*)linux_syncfs, .sy_auevent = AUE_SYNC, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },  /* 344 = linux_syncfs */
        { .sy_narg = AS(linux_sendmmsg_args), .sy_call = (sy_call_t 
*)linux_sendmmsg, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },      /* 345 = linux_sendmmsg */

Modified: head/sys/i386/linux/linux_systrace_args.c
==============================================================================
--- head/sys/i386/linux/linux_systrace_args.c   Tue Nov 17 19:51:47 2020        
(r367773)
+++ head/sys/i386/linux/linux_systrace_args.c   Tue Nov 17 19:53:59 2020        
(r367774)
@@ -2484,12 +2484,22 @@ systrace_args(int sysnum, void *params, uint64_t *uarg
        }
        /* linux_name_to_handle_at */
        case 341: {
-               *n_args = 0;
+               struct linux_name_to_handle_at_args *p = params;
+               iarg[0] = p->dirfd; /* l_int */
+               uarg[1] = (intptr_t) p->name; /* const char * */
+               uarg[2] = (intptr_t) p->handle; /* struct l_file_handle * */
+               uarg[3] = (intptr_t) p->mnt_id; /* l_int * */
+               iarg[4] = p->flags; /* l_int */
+               *n_args = 5;
                break;
        }
        /* linux_open_by_handle_at */
        case 342: {
-               *n_args = 0;
+               struct linux_open_by_handle_at_args *p = params;
+               iarg[0] = p->mountdirfd; /* l_int */
+               uarg[1] = (intptr_t) p->handle; /* struct l_file_handle * */
+               iarg[2] = p->flags; /* l_int */
+               *n_args = 3;
                break;
        }
        /* linux_clock_adjtime */
@@ -7047,9 +7057,41 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d
                break;
        /* linux_name_to_handle_at */
        case 341:
+               switch(ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland const char *";
+                       break;
+               case 2:
+                       p = "userland struct l_file_handle *";
+                       break;
+               case 3:
+                       p = "userland l_int *";
+                       break;
+               case 4:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_open_by_handle_at */
        case 342:
+               switch(ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland struct l_file_handle *";
+                       break;
+               case 2:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_clock_adjtime */
        case 343:
@@ -9432,8 +9474,14 @@ systrace_return_setargdesc(int sysnum, int ndx, char *
                break;
        /* linux_name_to_handle_at */
        case 341:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_open_by_handle_at */
        case 342:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_clock_adjtime */
        case 343:
        /* linux_syncfs */
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to