Print this page
7127  remove -Wno-missing-braces from Makefile.uts

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/fem.c
          +++ new/usr/src/uts/common/fs/fem.c
↓ open down ↓ 122 lines elided ↑ open up ↑
 123  123          _FEMOPDEF(GETSECATTR,   getsecattr),
 124  124          _FEMOPDEF(SHRLOCK,      shrlock),
 125  125          _FEMOPDEF(VNEVENT,      vnevent),
 126  126          _FEMOPDEF(REQZCBUF,     reqzcbuf),
 127  127          _FEMOPDEF(RETZCBUF,     retzcbuf),
 128  128          { NULL, 0, NULL, NULL }
 129  129  };
 130  130  
 131  131  
 132  132  #define _FEMGUARD(name, ignore)  \
 133      -        { VOPNAME_##name, (femop_t *)fem_err }
      133 +        { VOPNAME_##name, {(femop_t *)fem_err} }
 134  134  
 135  135  static struct fs_operation_def fem_guard_ops[] = {
 136  136          _FEMGUARD(OPEN,         open),
 137  137          _FEMGUARD(CLOSE,        close),
 138  138          _FEMGUARD(READ,         read),
 139  139          _FEMGUARD(WRITE,        write),
 140  140          _FEMGUARD(IOCTL,        ioctl),
 141  141          _FEMGUARD(SETFL,        setfl),
 142  142          _FEMGUARD(GETATTR,      getattr),
 143  143          _FEMGUARD(SETATTR,      setattr),
↓ open down ↓ 28 lines elided ↑ open up ↑
 172  172          _FEMGUARD(PATHCONF,     pathconf),
 173  173          _FEMGUARD(PAGEIO,       pageio),
 174  174          _FEMGUARD(DUMPCTL,      dumpctl),
 175  175          _FEMGUARD(DISPOSE,      dispose),
 176  176          _FEMGUARD(SETSECATTR,   setsecattr),
 177  177          _FEMGUARD(GETSECATTR,   getsecattr),
 178  178          _FEMGUARD(SHRLOCK,      shrlock),
 179  179          _FEMGUARD(VNEVENT,      vnevent),
 180  180          _FEMGUARD(REQZCBUF,     reqzcbuf),
 181  181          _FEMGUARD(RETZCBUF,     retzcbuf),
 182      -        { NULL, NULL }
      182 +        { NULL, {NULL} }
 183  183  };
 184  184  
 185  185  
 186  186  #define _FSEMOPDEF(name, member)  \
 187  187          { VFSNAME_##name, offsetof(fsem_t, fsemop_##member), NULL, fsem_err }
 188  188  
 189  189  static fs_operation_trans_def_t fsem_opdef[] = {
 190  190          _FSEMOPDEF(MOUNT,       mount),
 191  191          _FSEMOPDEF(UNMOUNT,     unmount),
 192  192          _FSEMOPDEF(ROOT,        root),
 193  193          _FSEMOPDEF(STATVFS,     statvfs),
 194  194          _FSEMOPDEF(SYNC,        sync),
 195  195          _FSEMOPDEF(VGET,        vget),
 196  196          _FSEMOPDEF(MOUNTROOT,   mountroot),
 197  197          _FSEMOPDEF(FREEVFS,     freevfs),
 198  198          _FSEMOPDEF(VNSTATE,     vnstate),
 199  199          { NULL, 0, NULL, NULL }
 200  200  };
 201  201  
 202  202  #define _FSEMGUARD(name, ignore)  \
 203      -        { VFSNAME_##name, (femop_t *)fsem_err }
      203 +        { VFSNAME_##name, {(femop_t *)fsem_err} }
 204  204  
 205  205  static struct fs_operation_def fsem_guard_ops[] = {
 206  206          _FSEMGUARD(MOUNT,       mount),
 207  207          _FSEMGUARD(UNMOUNT,     unmount),
 208  208          _FSEMGUARD(ROOT,        root),
 209  209          _FSEMGUARD(STATVFS,     statvfs),
 210  210          _FSEMGUARD(SYNC,        sync),
 211  211          _FSEMGUARD(VGET,        vget),
 212  212          _FSEMGUARD(MOUNTROOT,   mountroot),
 213  213          _FSEMGUARD(FREEVFS,     freevfs),
 214  214          _FSEMGUARD(VNSTATE,     vnstate),
 215      -        { NULL, NULL}
      215 +        { NULL, {NULL}}
 216  216  };
 217  217  
 218  218  
 219  219  /*
 220  220   * vsop_find, vfsop_find -
 221  221   *
 222  222   * These macros descend the stack until they find either a basic
 223  223   * vnode/vfs operation [ indicated by a null fn_available ] or a
 224  224   * stacked item where this method is non-null [_vsop].
 225  225   *
↓ open down ↓ 1723 lines elided ↑ open up ↑
1949 1949          return (errc);
1950 1950  }
1951 1951  
1952 1952  
1953 1953  /*
1954 1954   * specification table for the vhead vnode operations.
1955 1955   * It is an error for any operations to be missing.
1956 1956   */
1957 1957  
1958 1958  static struct fs_operation_def fhead_vn_spec[] = {
1959      -        { VOPNAME_OPEN, (femop_t *)vhead_open },
1960      -        { VOPNAME_CLOSE, (femop_t *)vhead_close },
1961      -        { VOPNAME_READ, (femop_t *)vhead_read },
1962      -        { VOPNAME_WRITE, (femop_t *)vhead_write },
1963      -        { VOPNAME_IOCTL, (femop_t *)vhead_ioctl },
1964      -        { VOPNAME_SETFL, (femop_t *)vhead_setfl },
1965      -        { VOPNAME_GETATTR, (femop_t *)vhead_getattr },
1966      -        { VOPNAME_SETATTR, (femop_t *)vhead_setattr },
1967      -        { VOPNAME_ACCESS, (femop_t *)vhead_access },
1968      -        { VOPNAME_LOOKUP, (femop_t *)vhead_lookup },
1969      -        { VOPNAME_CREATE, (femop_t *)vhead_create },
1970      -        { VOPNAME_REMOVE, (femop_t *)vhead_remove },
1971      -        { VOPNAME_LINK, (femop_t *)vhead_link },
1972      -        { VOPNAME_RENAME, (femop_t *)vhead_rename },
1973      -        { VOPNAME_MKDIR, (femop_t *)vhead_mkdir },
1974      -        { VOPNAME_RMDIR, (femop_t *)vhead_rmdir },
1975      -        { VOPNAME_READDIR, (femop_t *)vhead_readdir },
1976      -        { VOPNAME_SYMLINK, (femop_t *)vhead_symlink },
1977      -        { VOPNAME_READLINK, (femop_t *)vhead_readlink },
1978      -        { VOPNAME_FSYNC, (femop_t *)vhead_fsync },
1979      -        { VOPNAME_INACTIVE, (femop_t *)vhead_inactive },
1980      -        { VOPNAME_FID, (femop_t *)vhead_fid },
1981      -        { VOPNAME_RWLOCK, (femop_t *)vhead_rwlock },
1982      -        { VOPNAME_RWUNLOCK, (femop_t *)vhead_rwunlock },
1983      -        { VOPNAME_SEEK, (femop_t *)vhead_seek },
1984      -        { VOPNAME_CMP, (femop_t *)vhead_cmp },
1985      -        { VOPNAME_FRLOCK, (femop_t *)vhead_frlock },
1986      -        { VOPNAME_SPACE, (femop_t *)vhead_space },
1987      -        { VOPNAME_REALVP, (femop_t *)vhead_realvp },
1988      -        { VOPNAME_GETPAGE, (femop_t *)vhead_getpage },
1989      -        { VOPNAME_PUTPAGE, (femop_t *)vhead_putpage },
1990      -        { VOPNAME_MAP, (femop_t *)vhead_map },
1991      -        { VOPNAME_ADDMAP, (femop_t *)vhead_addmap },
1992      -        { VOPNAME_DELMAP, (femop_t *)vhead_delmap },
1993      -        { VOPNAME_POLL, (femop_t *)vhead_poll },
1994      -        { VOPNAME_DUMP, (femop_t *)vhead_dump },
1995      -        { VOPNAME_PATHCONF, (femop_t *)vhead_pathconf },
1996      -        { VOPNAME_PAGEIO, (femop_t *)vhead_pageio },
1997      -        { VOPNAME_DUMPCTL, (femop_t *)vhead_dumpctl },
1998      -        { VOPNAME_DISPOSE, (femop_t *)vhead_dispose },
1999      -        { VOPNAME_SETSECATTR, (femop_t *)vhead_setsecattr },
2000      -        { VOPNAME_GETSECATTR, (femop_t *)vhead_getsecattr },
2001      -        { VOPNAME_SHRLOCK, (femop_t *)vhead_shrlock },
2002      -        { VOPNAME_VNEVENT, (femop_t *)vhead_vnevent },
2003      -        { VOPNAME_REQZCBUF, (femop_t *)vhead_reqzcbuf },
2004      -        { VOPNAME_RETZCBUF, (femop_t *)vhead_retzcbuf },
2005      -        {       NULL,   NULL    }
     1959 +        { VOPNAME_OPEN, {(femop_t *)vhead_open} },
     1960 +        { VOPNAME_CLOSE, {(femop_t *)vhead_close} },
     1961 +        { VOPNAME_READ, {(femop_t *)vhead_read} },
     1962 +        { VOPNAME_WRITE, {(femop_t *)vhead_write} },
     1963 +        { VOPNAME_IOCTL, {(femop_t *)vhead_ioctl} },
     1964 +        { VOPNAME_SETFL, {(femop_t *)vhead_setfl} },
     1965 +        { VOPNAME_GETATTR, {(femop_t *)vhead_getattr} },
     1966 +        { VOPNAME_SETATTR, {(femop_t *)vhead_setattr} },
     1967 +        { VOPNAME_ACCESS, {(femop_t *)vhead_access} },
     1968 +        { VOPNAME_LOOKUP, {(femop_t *)vhead_lookup} },
     1969 +        { VOPNAME_CREATE, {(femop_t *)vhead_create} },
     1970 +        { VOPNAME_REMOVE, {(femop_t *)vhead_remove} },
     1971 +        { VOPNAME_LINK, {(femop_t *)vhead_link} },
     1972 +        { VOPNAME_RENAME, {(femop_t *)vhead_rename} },
     1973 +        { VOPNAME_MKDIR, {(femop_t *)vhead_mkdir} },
     1974 +        { VOPNAME_RMDIR, {(femop_t *)vhead_rmdir} },
     1975 +        { VOPNAME_READDIR, {(femop_t *)vhead_readdir} },
     1976 +        { VOPNAME_SYMLINK, {(femop_t *)vhead_symlink} },
     1977 +        { VOPNAME_READLINK, {(femop_t *)vhead_readlink} },
     1978 +        { VOPNAME_FSYNC, {(femop_t *)vhead_fsync} },
     1979 +        { VOPNAME_INACTIVE, {(femop_t *)vhead_inactive} },
     1980 +        { VOPNAME_FID, {(femop_t *)vhead_fid} },
     1981 +        { VOPNAME_RWLOCK, {(femop_t *)vhead_rwlock} },
     1982 +        { VOPNAME_RWUNLOCK, {(femop_t *)vhead_rwunlock} },
     1983 +        { VOPNAME_SEEK, {(femop_t *)vhead_seek} },
     1984 +        { VOPNAME_CMP, {(femop_t *)vhead_cmp} },
     1985 +        { VOPNAME_FRLOCK, {(femop_t *)vhead_frlock} },
     1986 +        { VOPNAME_SPACE, {(femop_t *)vhead_space} },
     1987 +        { VOPNAME_REALVP, {(femop_t *)vhead_realvp} },
     1988 +        { VOPNAME_GETPAGE, {(femop_t *)vhead_getpage} },
     1989 +        { VOPNAME_PUTPAGE, {(femop_t *)vhead_putpage} },
     1990 +        { VOPNAME_MAP, {(femop_t *)vhead_map} },
     1991 +        { VOPNAME_ADDMAP, {(femop_t *)vhead_addmap} },
     1992 +        { VOPNAME_DELMAP, {(femop_t *)vhead_delmap} },
     1993 +        { VOPNAME_POLL, {(femop_t *)vhead_poll} },
     1994 +        { VOPNAME_DUMP, {(femop_t *)vhead_dump} },
     1995 +        { VOPNAME_PATHCONF, {(femop_t *)vhead_pathconf} },
     1996 +        { VOPNAME_PAGEIO, {(femop_t *)vhead_pageio} },
     1997 +        { VOPNAME_DUMPCTL, {(femop_t *)vhead_dumpctl} },
     1998 +        { VOPNAME_DISPOSE, {(femop_t *)vhead_dispose} },
     1999 +        { VOPNAME_SETSECATTR, {(femop_t *)vhead_setsecattr} },
     2000 +        { VOPNAME_GETSECATTR, {(femop_t *)vhead_getsecattr} },
     2001 +        { VOPNAME_SHRLOCK, {(femop_t *)vhead_shrlock} },
     2002 +        { VOPNAME_VNEVENT, {(femop_t *)vhead_vnevent} },
     2003 +        { VOPNAME_REQZCBUF, {(femop_t *)vhead_reqzcbuf} },
     2004 +        { VOPNAME_RETZCBUF, {(femop_t *)vhead_retzcbuf} },
     2005 +        {       NULL,   {NULL}  }
2006 2006  };
2007 2007  
2008 2008  /*
2009 2009   * specification table for the vfshead vnode operations.
2010 2010   * It is an error for any operations to be missing.
2011 2011   */
2012 2012  
2013 2013  static struct fs_operation_def fshead_vfs_spec[]  = {
2014      -        { VFSNAME_MOUNT, (femop_t *)fshead_mount },
2015      -        { VFSNAME_UNMOUNT, (femop_t *)fshead_unmount },
2016      -        { VFSNAME_ROOT, (femop_t *)fshead_root },
2017      -        { VFSNAME_STATVFS, (femop_t *)fshead_statvfs },
2018      -        { VFSNAME_SYNC, (femop_t *)fshead_sync },
2019      -        { VFSNAME_VGET, (femop_t *)fshead_vget },
2020      -        { VFSNAME_MOUNTROOT, (femop_t *)fshead_mountroot },
2021      -        { VFSNAME_FREEVFS, (femop_t *)fshead_freevfs },
2022      -        { VFSNAME_VNSTATE, (femop_t *)fshead_vnstate },
2023      -        {       NULL,   NULL    }
     2014 +        { VFSNAME_MOUNT, {(femop_t *)fshead_mount} },
     2015 +        { VFSNAME_UNMOUNT, {(femop_t *)fshead_unmount} },
     2016 +        { VFSNAME_ROOT, {(femop_t *)fshead_root} },
     2017 +        { VFSNAME_STATVFS, {(femop_t *)fshead_statvfs} },
     2018 +        { VFSNAME_SYNC, {(femop_t *)fshead_sync} },
     2019 +        { VFSNAME_VGET, {(femop_t *)fshead_vget} },
     2020 +        { VFSNAME_MOUNTROOT, {(femop_t *)fshead_mountroot} },
     2021 +        { VFSNAME_FREEVFS, {(femop_t *)fshead_freevfs} },
     2022 +        { VFSNAME_VNSTATE, {(femop_t *)fshead_vnstate} },
     2023 +        {       NULL,   {NULL}  }
2024 2024  };
2025 2025  
2026 2026  /*
2027 2027   * This set of routines transfer control to the next stacked monitor.
2028 2028   *
2029 2029   * Each routine is identical except for naming, types and arguments.
2030 2030   *
2031 2031   * The basic steps are:
2032 2032   * 1.  Decrease the stack pointer by one.
2033 2033   * 2.  If the current item is a base operation (vnode, vfs), goto 5.
↓ open down ↓ 1562 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX