The branch main has been updated by markj:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=d7025d3a3f17f3c91bc14be1a9e66722949bf915

commit d7025d3a3f17f3c91bc14be1a9e66722949bf915
Author:     Mark Johnston <ma...@freebsd.org>
AuthorDate: 2025-06-06 13:25:58 +0000
Commit:     Mark Johnston <ma...@freebsd.org>
CommitDate: 2025-07-04 14:42:34 +0000

    linux: Regenerate system call definitions
    
    Sponsored by:   Klara, Inc.
---
 sys/amd64/linux/linux_proto.h             |  7 ++--
 sys/amd64/linux/linux_sysent.c            |  4 +--
 sys/amd64/linux/linux_systrace_args.c     | 40 +++++++++++++++++++++--
 sys/amd64/linux32/linux32_proto.h         |  9 ++++--
 sys/amd64/linux32/linux32_sysent.c        |  6 ++--
 sys/amd64/linux32/linux32_systrace_args.c | 54 +++++++++++++++++++++++++++++--
 sys/arm64/linux/linux_proto.h             |  7 ++--
 sys/arm64/linux/linux_sysent.c            |  4 +--
 sys/arm64/linux/linux_systrace_args.c     | 40 +++++++++++++++++++++--
 sys/i386/linux/linux_proto.h              |  9 ++++--
 sys/i386/linux/linux_sysent.c             |  6 ++--
 sys/i386/linux/linux_systrace_args.c      | 54 +++++++++++++++++++++++++++++--
 12 files changed, 210 insertions(+), 30 deletions(-)

diff --git a/sys/amd64/linux/linux_proto.h b/sys/amd64/linux/linux_proto.h
index 15e1dfc1a444..f1d9c96a78d7 100644
--- a/sys/amd64/linux/linux_proto.h
+++ b/sys/amd64/linux/linux_proto.h
@@ -914,10 +914,13 @@ struct linux_inotify_init_args {
        syscallarg_t dummy;
 };
 struct linux_inotify_add_watch_args {
-       syscallarg_t dummy;
+       char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+       char pathname_l_[PADL_(const char *)]; const char * pathname; char 
pathname_r_[PADR_(const char *)];
+       char mask_l_[PADL_(uint32_t)]; uint32_t mask; char 
mask_r_[PADR_(uint32_t)];
 };
 struct linux_inotify_rm_watch_args {
-       syscallarg_t dummy;
+       char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+       char wd_l_[PADL_(uint32_t)]; uint32_t wd; char wd_r_[PADR_(uint32_t)];
 };
 struct linux_migrate_pages_args {
        syscallarg_t dummy;
diff --git a/sys/amd64/linux/linux_sysent.c b/sys/amd64/linux/linux_sysent.c
index 8413d2723551..62b50cf68a32 100644
--- a/sys/amd64/linux/linux_sysent.c
+++ b/sys/amd64/linux/linux_sysent.c
@@ -268,8 +268,8 @@ struct sysent linux_sysent[] = {
        { .sy_narg = AS(linux_ioprio_set_args), .sy_call = (sy_call_t 
*)linux_ioprio_set, .sy_auevent = AUE_SETPRIORITY, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },   /* 251 = linux_ioprio_set */
        { .sy_narg = AS(linux_ioprio_get_args), .sy_call = (sy_call_t 
*)linux_ioprio_get, .sy_auevent = AUE_GETPRIORITY, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },   /* 252 = linux_ioprio_get */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_init, .sy_auevent 
= AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },        /* 253 = 
linux_inotify_init */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_add_watch, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 254 = 
linux_inotify_add_watch */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_rm_watch, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },    /* 255 
= linux_inotify_rm_watch */
+       { .sy_narg = AS(linux_inotify_add_watch_args), .sy_call = (sy_call_t 
*)linux_inotify_add_watch, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 254 = linux_inotify_add_watch */
+       { .sy_narg = AS(linux_inotify_rm_watch_args), .sy_call = (sy_call_t 
*)linux_inotify_rm_watch, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },      /* 255 = linux_inotify_rm_watch */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_migrate_pages, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
256 = linux_migrate_pages */
        { .sy_narg = AS(linux_openat_args), .sy_call = (sy_call_t 
*)linux_openat, .sy_auevent = AUE_OPEN_RWTC, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },     /* 257 = linux_openat */
        { .sy_narg = AS(linux_mkdirat_args), .sy_call = (sy_call_t 
*)linux_mkdirat, .sy_auevent = AUE_MKDIRAT, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },     /* 258 = linux_mkdirat */
diff --git a/sys/amd64/linux/linux_systrace_args.c 
b/sys/amd64/linux/linux_systrace_args.c
index 20322f7a8660..1dc4de019080 100644
--- a/sys/amd64/linux/linux_systrace_args.c
+++ b/sys/amd64/linux/linux_systrace_args.c
@@ -1918,12 +1918,19 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, 
int *n_args)
        }
        /* linux_inotify_add_watch */
        case 254: {
-               *n_args = 0;
+               struct linux_inotify_add_watch_args *p = params;
+               iarg[a++] = p->fd; /* l_int */
+               uarg[a++] = (intptr_t)p->pathname; /* const char * */
+               uarg[a++] = p->mask; /* uint32_t */
+               *n_args = 3;
                break;
        }
        /* linux_inotify_rm_watch */
        case 255: {
-               *n_args = 0;
+               struct linux_inotify_rm_watch_args *p = params;
+               iarg[a++] = p->fd; /* l_int */
+               uarg[a++] = p->wd; /* uint32_t */
+               *n_args = 2;
                break;
        }
        /* linux_migrate_pages */
@@ -5860,9 +5867,32 @@ systrace_entry_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_add_watch */
        case 254:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland const char *";
+                       break;
+               case 2:
+                       p = "uint32_t";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_inotify_rm_watch */
        case 255:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "uint32_t";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_migrate_pages */
        case 256:
@@ -8353,8 +8383,14 @@ systrace_return_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
        case 253:
        /* linux_inotify_add_watch */
        case 254:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_inotify_rm_watch */
        case 255:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_migrate_pages */
        case 256:
        /* linux_openat */
diff --git a/sys/amd64/linux32/linux32_proto.h 
b/sys/amd64/linux32/linux32_proto.h
index ab0edd99df42..57a303271f1c 100644
--- a/sys/amd64/linux32/linux32_proto.h
+++ b/sys/amd64/linux32/linux32_proto.h
@@ -983,10 +983,13 @@ struct linux_inotify_init_args {
        syscallarg_t dummy;
 };
 struct linux_inotify_add_watch_args {
-       syscallarg_t dummy;
+       char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+       char pathname_l_[PADL_(const char *)]; const char * pathname; char 
pathname_r_[PADR_(const char *)];
+       char mask_l_[PADL_(uint32_t)]; uint32_t mask; char 
mask_r_[PADR_(uint32_t)];
 };
 struct linux_inotify_rm_watch_args {
-       syscallarg_t dummy;
+       char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+       char wd_l_[PADL_(uint32_t)]; uint32_t wd; char wd_r_[PADR_(uint32_t)];
 };
 struct linux_migrate_pages_args {
        syscallarg_t dummy;
@@ -1184,7 +1187,7 @@ struct linux_pipe2_args {
        char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_inotify_init1_args {
-       syscallarg_t dummy;
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_preadv_args {
        char fd_l_[PADL_(l_ulong)]; l_ulong fd; char fd_r_[PADR_(l_ulong)];
diff --git a/sys/amd64/linux32/linux32_sysent.c 
b/sys/amd64/linux32/linux32_sysent.c
index add9844254ce..1bc8841badf3 100644
--- a/sys/amd64/linux32/linux32_sysent.c
+++ b/sys/amd64/linux32/linux32_sysent.c
@@ -307,8 +307,8 @@ struct sysent linux32_sysent[] = {
        { .sy_narg = AS(linux_ioprio_set_args), .sy_call = (sy_call_t 
*)linux_ioprio_set, .sy_auevent = AUE_SETPRIORITY, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },   /* 289 = linux_ioprio_set */
        { .sy_narg = AS(linux_ioprio_get_args), .sy_call = (sy_call_t 
*)linux_ioprio_get, .sy_auevent = AUE_GETPRIORITY, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },   /* 290 = linux_ioprio_get */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_init, .sy_auevent 
= AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },        /* 291 = 
linux_inotify_init */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_add_watch, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 292 = 
linux_inotify_add_watch */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_rm_watch, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },    /* 293 
= linux_inotify_rm_watch */
+       { .sy_narg = AS(linux_inotify_add_watch_args), .sy_call = (sy_call_t 
*)linux_inotify_add_watch, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 292 = linux_inotify_add_watch */
+       { .sy_narg = AS(linux_inotify_rm_watch_args), .sy_call = (sy_call_t 
*)linux_inotify_rm_watch, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },      /* 293 = linux_inotify_rm_watch */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_migrate_pages, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
294 = linux_migrate_pages */
        { .sy_narg = AS(linux_openat_args), .sy_call = (sy_call_t 
*)linux_openat, .sy_auevent = AUE_OPEN_RWTC, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },     /* 295 = linux_openat */
        { .sy_narg = AS(linux_mkdirat_args), .sy_call = (sy_call_t 
*)linux_mkdirat, .sy_auevent = AUE_MKDIRAT, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },     /* 296 = linux_mkdirat */
@@ -347,7 +347,7 @@ struct sysent linux32_sysent[] = {
        { .sy_narg = AS(linux_epoll_create1_args), .sy_call = (sy_call_t 
*)linux_epoll_create1, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 329 = linux_epoll_create1 */
        { .sy_narg = AS(linux_dup3_args), .sy_call = (sy_call_t *)linux_dup3, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },      /* 
330 = linux_dup3 */
        { .sy_narg = AS(linux_pipe2_args), .sy_call = (sy_call_t *)linux_pipe2, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },    /* 331 
= linux_pipe2 */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_init1, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
332 = linux_inotify_init1 */
+       { .sy_narg = AS(linux_inotify_init1_args), .sy_call = (sy_call_t 
*)linux_inotify_init1, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 332 = linux_inotify_init1 */
        { .sy_narg = AS(linux_preadv_args), .sy_call = (sy_call_t 
*)linux_preadv, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },  /* 333 = linux_preadv */
        { .sy_narg = AS(linux_pwritev_args), .sy_call = (sy_call_t 
*)linux_pwritev, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },        /* 334 = linux_pwritev */
        { .sy_narg = AS(linux_rt_tgsigqueueinfo_args), .sy_call = (sy_call_t 
*)linux_rt_tgsigqueueinfo, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 335 = linux_rt_tgsigqueueinfo */
diff --git a/sys/amd64/linux32/linux32_systrace_args.c 
b/sys/amd64/linux32/linux32_systrace_args.c
index 7793124e6935..cbd1641c2a34 100644
--- a/sys/amd64/linux32/linux32_systrace_args.c
+++ b/sys/amd64/linux32/linux32_systrace_args.c
@@ -2036,12 +2036,19 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, 
int *n_args)
        }
        /* linux_inotify_add_watch */
        case 292: {
-               *n_args = 0;
+               struct linux_inotify_add_watch_args *p = params;
+               iarg[a++] = p->fd; /* l_int */
+               uarg[a++] = (intptr_t)p->pathname; /* const char * */
+               uarg[a++] = p->mask; /* uint32_t */
+               *n_args = 3;
                break;
        }
        /* linux_inotify_rm_watch */
        case 293: {
-               *n_args = 0;
+               struct linux_inotify_rm_watch_args *p = params;
+               iarg[a++] = p->fd; /* l_int */
+               uarg[a++] = p->wd; /* uint32_t */
+               *n_args = 2;
                break;
        }
        /* linux_migrate_pages */
@@ -2379,7 +2386,9 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, 
int *n_args)
        }
        /* linux_inotify_init1 */
        case 332: {
-               *n_args = 0;
+               struct linux_inotify_init1_args *p = params;
+               iarg[a++] = p->flags; /* l_int */
+               *n_args = 1;
                break;
        }
        /* linux_preadv */
@@ -6536,9 +6545,32 @@ systrace_entry_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_add_watch */
        case 292:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland const char *";
+                       break;
+               case 2:
+                       p = "uint32_t";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_inotify_rm_watch */
        case 293:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "uint32_t";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_migrate_pages */
        case 294:
@@ -7116,6 +7148,13 @@ systrace_entry_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_init1 */
        case 332:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_preadv */
        case 333:
@@ -9809,8 +9848,14 @@ systrace_return_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
        case 291:
        /* linux_inotify_add_watch */
        case 292:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_inotify_rm_watch */
        case 293:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_migrate_pages */
        case 294:
        /* linux_openat */
@@ -9982,6 +10027,9 @@ systrace_return_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_init1 */
        case 332:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_preadv */
        case 333:
                if (ndx == 0 || ndx == 1)
diff --git a/sys/arm64/linux/linux_proto.h b/sys/arm64/linux/linux_proto.h
index ae3d8569df58..82f57f77ffae 100644
--- a/sys/arm64/linux/linux_proto.h
+++ b/sys/arm64/linux/linux_proto.h
@@ -141,10 +141,13 @@ struct linux_inotify_init1_args {
        char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_inotify_add_watch_args {
-       syscallarg_t dummy;
+       char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+       char pathname_l_[PADL_(const char *)]; const char * pathname; char 
pathname_r_[PADR_(const char *)];
+       char mask_l_[PADL_(uint32_t)]; uint32_t mask; char 
mask_r_[PADR_(uint32_t)];
 };
 struct linux_inotify_rm_watch_args {
-       syscallarg_t dummy;
+       char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+       char wd_l_[PADL_(uint32_t)]; uint32_t wd; char wd_r_[PADR_(uint32_t)];
 };
 struct linux_ioctl_args {
        char fd_l_[PADL_(l_uint)]; l_uint fd; char fd_r_[PADR_(l_uint)];
diff --git a/sys/arm64/linux/linux_sysent.c b/sys/arm64/linux/linux_sysent.c
index 722ada465730..e54a76cfd55e 100644
--- a/sys/arm64/linux/linux_sysent.c
+++ b/sys/arm64/linux/linux_sysent.c
@@ -41,8 +41,8 @@ struct sysent linux_sysent[] = {
        { .sy_narg = AS(linux_dup3_args), .sy_call = (sy_call_t *)linux_dup3, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },      /* 24 
= linux_dup3 */
        { .sy_narg = AS(linux_fcntl_args), .sy_call = (sy_call_t *)linux_fcntl, 
.sy_auevent = AUE_FCNTL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 25 = 
linux_fcntl */
        { .sy_narg = AS(linux_inotify_init1_args), .sy_call = (sy_call_t 
*)linux_inotify_init1, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 26 = linux_inotify_init1 */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_add_watch, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 27 = 
linux_inotify_add_watch */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_rm_watch, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },    /* 28 = 
linux_inotify_rm_watch */
+       { .sy_narg = AS(linux_inotify_add_watch_args), .sy_call = (sy_call_t 
*)linux_inotify_add_watch, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 27 = linux_inotify_add_watch */
+       { .sy_narg = AS(linux_inotify_rm_watch_args), .sy_call = (sy_call_t 
*)linux_inotify_rm_watch, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },      /* 28 = linux_inotify_rm_watch */
        { .sy_narg = AS(linux_ioctl_args), .sy_call = (sy_call_t *)linux_ioctl, 
.sy_auevent = AUE_IOCTL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 29 = 
linux_ioctl */
        { .sy_narg = AS(linux_ioprio_set_args), .sy_call = (sy_call_t 
*)linux_ioprio_set, .sy_auevent = AUE_SETPRIORITY, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },   /* 30 = linux_ioprio_set */
        { .sy_narg = AS(linux_ioprio_get_args), .sy_call = (sy_call_t 
*)linux_ioprio_get, .sy_auevent = AUE_GETPRIORITY, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },   /* 31 = linux_ioprio_get */
diff --git a/sys/arm64/linux/linux_systrace_args.c 
b/sys/arm64/linux/linux_systrace_args.c
index 54e4dd82355d..1b946a9406a5 100644
--- a/sys/arm64/linux/linux_systrace_args.c
+++ b/sys/arm64/linux/linux_systrace_args.c
@@ -210,12 +210,19 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, 
int *n_args)
        }
        /* linux_inotify_add_watch */
        case 27: {
-               *n_args = 0;
+               struct linux_inotify_add_watch_args *p = params;
+               iarg[a++] = p->fd; /* l_int */
+               uarg[a++] = (intptr_t)p->pathname; /* const char * */
+               uarg[a++] = p->mask; /* uint32_t */
+               *n_args = 3;
                break;
        }
        /* linux_inotify_rm_watch */
        case 28: {
-               *n_args = 0;
+               struct linux_inotify_rm_watch_args *p = params;
+               iarg[a++] = p->fd; /* l_int */
+               uarg[a++] = p->wd; /* uint32_t */
+               *n_args = 2;
                break;
        }
        /* linux_ioctl */
@@ -2780,9 +2787,32 @@ systrace_entry_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_add_watch */
        case 27:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland const char *";
+                       break;
+               case 2:
+                       p = "uint32_t";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_inotify_rm_watch */
        case 28:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "uint32_t";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_ioctl */
        case 29:
@@ -6455,8 +6485,14 @@ systrace_return_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_add_watch */
        case 27:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_inotify_rm_watch */
        case 28:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_ioctl */
        case 29:
                if (ndx == 0 || ndx == 1)
diff --git a/sys/i386/linux/linux_proto.h b/sys/i386/linux/linux_proto.h
index aa2dfbb68745..49f002a633d2 100644
--- a/sys/i386/linux/linux_proto.h
+++ b/sys/i386/linux/linux_proto.h
@@ -981,10 +981,13 @@ struct linux_inotify_init_args {
        syscallarg_t dummy;
 };
 struct linux_inotify_add_watch_args {
-       syscallarg_t dummy;
+       char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+       char pathname_l_[PADL_(const char *)]; const char * pathname; char 
pathname_r_[PADR_(const char *)];
+       char mask_l_[PADL_(uint32_t)]; uint32_t mask; char 
mask_r_[PADR_(uint32_t)];
 };
 struct linux_inotify_rm_watch_args {
-       syscallarg_t dummy;
+       char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+       char wd_l_[PADL_(uint32_t)]; uint32_t wd; char wd_r_[PADR_(uint32_t)];
 };
 struct linux_migrate_pages_args {
        syscallarg_t dummy;
@@ -1178,7 +1181,7 @@ struct linux_pipe2_args {
        char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_inotify_init1_args {
-       syscallarg_t dummy;
+       char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_preadv_args {
        char fd_l_[PADL_(l_ulong)]; l_ulong fd; char fd_r_[PADR_(l_ulong)];
diff --git a/sys/i386/linux/linux_sysent.c b/sys/i386/linux/linux_sysent.c
index 7be646f34144..b8893008944b 100644
--- a/sys/i386/linux/linux_sysent.c
+++ b/sys/i386/linux/linux_sysent.c
@@ -306,8 +306,8 @@ struct sysent linux_sysent[] = {
        { .sy_narg = AS(linux_ioprio_set_args), .sy_call = (sy_call_t 
*)linux_ioprio_set, .sy_auevent = AUE_SETPRIORITY, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },   /* 289 = linux_ioprio_set */
        { .sy_narg = AS(linux_ioprio_get_args), .sy_call = (sy_call_t 
*)linux_ioprio_get, .sy_auevent = AUE_GETPRIORITY, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },   /* 290 = linux_ioprio_get */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_init, .sy_auevent 
= AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },        /* 291 = 
linux_inotify_init */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_add_watch, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },   /* 292 = 
linux_inotify_add_watch */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_rm_watch, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },    /* 293 
= linux_inotify_rm_watch */
+       { .sy_narg = AS(linux_inotify_add_watch_args), .sy_call = (sy_call_t 
*)linux_inotify_add_watch, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 292 = linux_inotify_add_watch */
+       { .sy_narg = AS(linux_inotify_rm_watch_args), .sy_call = (sy_call_t 
*)linux_inotify_rm_watch, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },      /* 293 = linux_inotify_rm_watch */
        { .sy_narg = 0, .sy_call = (sy_call_t *)linux_migrate_pages, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
294 = linux_migrate_pages */
        { .sy_narg = AS(linux_openat_args), .sy_call = (sy_call_t 
*)linux_openat, .sy_auevent = AUE_OPEN_RWTC, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },     /* 295 = linux_openat */
        { .sy_narg = AS(linux_mkdirat_args), .sy_call = (sy_call_t 
*)linux_mkdirat, .sy_auevent = AUE_MKDIRAT, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },     /* 296 = linux_mkdirat */
@@ -346,7 +346,7 @@ struct sysent linux_sysent[] = {
        { .sy_narg = AS(linux_epoll_create1_args), .sy_call = (sy_call_t 
*)linux_epoll_create1, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 329 = linux_epoll_create1 */
        { .sy_narg = AS(linux_dup3_args), .sy_call = (sy_call_t *)linux_dup3, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },      /* 
330 = linux_dup3 */
        { .sy_narg = AS(linux_pipe2_args), .sy_call = (sy_call_t *)linux_pipe2, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },    /* 331 
= linux_pipe2 */
-       { .sy_narg = 0, .sy_call = (sy_call_t *)linux_inotify_init1, 
.sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC },       /* 
332 = linux_inotify_init1 */
+       { .sy_narg = AS(linux_inotify_init1_args), .sy_call = (sy_call_t 
*)linux_inotify_init1, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 332 = linux_inotify_init1 */
        { .sy_narg = AS(linux_preadv_args), .sy_call = (sy_call_t 
*)linux_preadv, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },  /* 333 = linux_preadv */
        { .sy_narg = AS(linux_pwritev_args), .sy_call = (sy_call_t 
*)linux_pwritev, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },        /* 334 = linux_pwritev */
        { .sy_narg = AS(linux_rt_tgsigqueueinfo_args), .sy_call = (sy_call_t 
*)linux_rt_tgsigqueueinfo, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = 
SY_THR_STATIC },    /* 335 = linux_rt_tgsigqueueinfo */
diff --git a/sys/i386/linux/linux_systrace_args.c 
b/sys/i386/linux/linux_systrace_args.c
index f3e3c32a2bbf..563d1a795ae1 100644
--- a/sys/i386/linux/linux_systrace_args.c
+++ b/sys/i386/linux/linux_systrace_args.c
@@ -2071,12 +2071,19 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, 
int *n_args)
        }
        /* linux_inotify_add_watch */
        case 292: {
-               *n_args = 0;
+               struct linux_inotify_add_watch_args *p = params;
+               iarg[a++] = p->fd; /* l_int */
+               uarg[a++] = (intptr_t)p->pathname; /* const char * */
+               uarg[a++] = p->mask; /* uint32_t */
+               *n_args = 3;
                break;
        }
        /* linux_inotify_rm_watch */
        case 293: {
-               *n_args = 0;
+               struct linux_inotify_rm_watch_args *p = params;
+               iarg[a++] = p->fd; /* l_int */
+               uarg[a++] = p->wd; /* uint32_t */
+               *n_args = 2;
                break;
        }
        /* linux_migrate_pages */
@@ -2410,7 +2417,9 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, 
int *n_args)
        }
        /* linux_inotify_init1 */
        case 332: {
-               *n_args = 0;
+               struct linux_inotify_init1_args *p = params;
+               iarg[a++] = p->flags; /* l_int */
+               *n_args = 1;
                break;
        }
        /* linux_preadv */
@@ -6604,9 +6613,32 @@ systrace_entry_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_add_watch */
        case 292:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "userland const char *";
+                       break;
+               case 2:
+                       p = "uint32_t";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_inotify_rm_watch */
        case 293:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               case 1:
+                       p = "uint32_t";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_migrate_pages */
        case 294:
@@ -7172,6 +7204,13 @@ systrace_entry_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_init1 */
        case 332:
+               switch (ndx) {
+               case 0:
+                       p = "l_int";
+                       break;
+               default:
+                       break;
+               };
                break;
        /* linux_preadv */
        case 333:
@@ -9889,8 +9928,14 @@ systrace_return_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
        case 291:
        /* linux_inotify_add_watch */
        case 292:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_inotify_rm_watch */
        case 293:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_migrate_pages */
        case 294:
        /* linux_openat */
@@ -10062,6 +10107,9 @@ systrace_return_setargdesc(int sysnum, int ndx, char 
*desc, size_t descsz)
                break;
        /* linux_inotify_init1 */
        case 332:
+               if (ndx == 0 || ndx == 1)
+                       p = "int";
+               break;
        /* linux_preadv */
        case 333:
                if (ndx == 0 || ndx == 1)

Reply via email to