Print this page
NEX-16783 Panic in smbfs_delmap_callback (fix leak)
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Dan Fields <dan.fields@nexenta.com>
5404 smbfs needs mmap support
Portions contributed by: Gordon Ross <gordon.w.ross@gmail.com>
Reviewed by: C Fraire <cfraire@me.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Jason King <jason.brian.king@gmail.com>
Reviewed by: Andrew Stormont <andyjstormont@gmail.com>
Approved by: Richard Lowe <richlowe@richlowe.net>

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/smbclnt/smbfs/smbfs.h
          +++ new/usr/src/uts/common/fs/smbclnt/smbfs/smbfs.h
↓ open down ↓ 86 lines elided ↑ open up ↑
  87   87  struct smbnode;
  88   88  struct smb_share;
  89   89  
  90   90  /*
  91   91   * The values for smi_flags (from nfs_clnt.h)
  92   92   */
  93   93  #define SMI_INT         0x04            /* interrupts allowed */
  94   94  #define SMI_NOAC        0x10            /* don't cache attributes */
  95   95  #define SMI_LLOCK       0x80            /* local locking only */
  96   96  #define SMI_ACL         0x2000          /* share supports ACLs */
       97 +#define SMI_DIRECTIO    0x40000         /* do direct I/O */
  97   98  #define SMI_EXTATTR     0x80000         /* share supports ext. attrs */
  98   99  #define SMI_DEAD        0x200000        /* mount has been terminated */
  99  100  
 100  101  /*
 101  102   * Stuff returned by smbfs_smb_qfsattr
 102  103   * See [CIFS] SMB_QUERY_FS_ATTRIBUTE_INFO
 103  104   */
 104  105  typedef struct smb_fs_attr_info {
 105  106          uint32_t        fsa_aflags;     /* Attr. flags [CIFS 4.1.6.6] */
 106  107          uint32_t        fsa_maxname;    /* max. component length */
 107  108          char            fsa_tname[FSTYPSZ]; /* type name, i.e. "NTFS" */
 108  109  } smb_fs_attr_info_t;
 109  110  
 110  111  /*
 111  112   * Corresponds to Darwin: struct smbmount
 112  113   */
 113  114  typedef struct smbmntinfo {
 114  115          struct vfs              *smi_vfsp;      /* mount back pointer to vfs */
 115  116          struct smbnode          *smi_root;      /* the root node */
 116  117          struct smb_share        *smi_share;     /* netsmb SMB share conn data */
      118 +        struct taskq            *smi_taskq;     /* for async work */
 117  119          kmutex_t                smi_lock;       /* mutex for flags, etc. */
 118  120          uint32_t                smi_flags;      /* NFS-derived flag bits */
 119  121          uint32_t                smi_status;     /* status bits for this mount */
 120  122          hrtime_t                smi_statfstime; /* sm_statvfsbuf cache time */
 121  123          statvfs64_t             smi_statvfsbuf; /* cached statvfs data */
 122  124          kcondvar_t              smi_statvfs_cv;
 123  125          smb_fs_attr_info_t      smi_fsa;        /* SMB FS attributes. */
 124  126  #define smi_fsattr              smi_fsa.fsa_aflags
 125  127  
 126  128          /*
↓ open down ↓ 58 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX