Author: julian
Date: Wed Jul 27 16:27:41 2016
New Revision: 303395
URL: https://svnweb.freebsd.org/changeset/base/303395

Log:
  MFH: r303287
  
  Split MAKE_SYSENT into two parts so that the initializer part can be
  used separately if one wants to embed the sysent into a larger structure.

Modified:
  stable/10/sys/sys/sysent.h
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/sys/sysent.h
==============================================================================
--- stable/10/sys/sys/sysent.h  Wed Jul 27 16:01:44 2016        (r303394)
+++ stable/10/sys/sys/sysent.h  Wed Jul 27 16:27:41 2016        (r303395)
@@ -173,13 +173,21 @@ struct syscall_module_data {
        struct sysent old_sysent;       /* old sysent */
 };
 
-#define        MAKE_SYSENT(syscallname)                                \
-static struct sysent syscallname##_sysent = {                  \
-       (sizeof(struct syscallname ## _args )                   \
+/* separate initialization vector so it can be used in a substructure */
+#define SYSENT_INIT_VALS(_syscallname) {                       \
+       .sy_narg = (sizeof(struct _syscallname ## _args )       \
            / sizeof(register_t)),                              \
-       (sy_call_t *)& sys_##syscallname,                       \
-       SYS_AUE_##syscallname                                   \
-}
+       .sy_call = (sy_call_t *)&sys_##_syscallname,            \
+       .sy_auevent = SYS_AUE_##_syscallname,                   \
+       .sy_systrace_args_func = NULL,                          \
+       .sy_entry = 0,                                          \
+       .sy_return = 0,                                         \
+       .sy_flags = 0,                                          \
+       .sy_thrcnt = 0                                          \
+}                                                      
+
+#define        MAKE_SYSENT(syscallname)                                \
+static struct sysent syscallname##_sysent = SYSENT_INIT_VALS(syscallname);
 
 #define        MAKE_SYSENT_COMPAT(syscallname)                         \
 static struct sysent syscallname##_sysent = {                  \
_______________________________________________
svn-src-stable-10@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"

Reply via email to