218 * Lock for these is: r_lkserlock
219 */
220 int n_dirrefs;
221 struct smbfs_fctx *n_dirseq; /* ff context */
222 int n_dirofs; /* last ff offset */
223 int n_fidrefs;
224 uint16_t n_fid; /* file handle */
225 enum vtype n_ovtype; /* vnode type opened */
226 uint32_t n_rights; /* granted rights */
227 int n_vcgenid; /* gereration no. (reconnect) */
228
229 /*
230 * Misc. bookkeeping
231 */
232 cred_t *r_cred; /* current credentials */
233 u_offset_t r_nextr; /* next read offset (read-ahead) */
234 long r_mapcnt; /* count of mmapped pages */
235 uint_t r_count; /* # of refs not reflect in v_count */
236 uint_t r_awcount; /* # of outstanding async write */
237 uint_t r_gcount; /* getattrs waiting to flush pages */
238 uint_t r_flags; /* flags, see below */
239 uint32_t n_flag; /* NXXX flags below */
240 uint_t r_error; /* async write error */
241 kcondvar_t r_cv; /* condvar for blocked threads */
242 avl_tree_t r_dir; /* cache of readdir responses */
243 rddir_cache *r_direof; /* pointer to the EOF entry */
244 kthread_t *r_serial; /* id of purging thread */
245 list_t r_indelmap; /* list of delmap callers */
246
247 /*
248 * Attributes: local, and as last seen on the server.
249 * See notes above re: r_size vs r_attr.fa_size, etc.
250 */
251 smbfattr_t r_attr; /* attributes from the server */
252 hrtime_t r_attrtime; /* time attributes become invalid */
253 hrtime_t r_mtime; /* client time file last modified */
254 len_t r_size; /* client's view of file size */
255
256 /*
257 * Security attributes.
|
218 * Lock for these is: r_lkserlock
219 */
220 int n_dirrefs;
221 struct smbfs_fctx *n_dirseq; /* ff context */
222 int n_dirofs; /* last ff offset */
223 int n_fidrefs;
224 uint16_t n_fid; /* file handle */
225 enum vtype n_ovtype; /* vnode type opened */
226 uint32_t n_rights; /* granted rights */
227 int n_vcgenid; /* gereration no. (reconnect) */
228
229 /*
230 * Misc. bookkeeping
231 */
232 cred_t *r_cred; /* current credentials */
233 u_offset_t r_nextr; /* next read offset (read-ahead) */
234 long r_mapcnt; /* count of mmapped pages */
235 uint_t r_count; /* # of refs not reflect in v_count */
236 uint_t r_awcount; /* # of outstanding async write */
237 uint_t r_gcount; /* getattrs waiting to flush pages */
238 u_offset_t r_modaddr; /* address for page in writenp */
239 uint_t r_flags; /* flags, see below */
240 uint32_t n_flag; /* NXXX flags below */
241 uint_t r_error; /* async write error */
242 kcondvar_t r_cv; /* condvar for blocked threads */
243 avl_tree_t r_dir; /* cache of readdir responses */
244 rddir_cache *r_direof; /* pointer to the EOF entry */
245 kthread_t *r_serial; /* id of purging thread */
246 list_t r_indelmap; /* list of delmap callers */
247
248 /*
249 * Attributes: local, and as last seen on the server.
250 * See notes above re: r_size vs r_attr.fa_size, etc.
251 */
252 smbfattr_t r_attr; /* attributes from the server */
253 hrtime_t r_attrtime; /* time attributes become invalid */
254 hrtime_t r_mtime; /* client time file last modified */
255 len_t r_size; /* client's view of file size */
256
257 /*
258 * Security attributes.
|