Lines Matching defs:rnode4
227 typedef struct rnode4 { struct
229 struct rnode4 *r_hashf; /* hash queue forward pointer */ argument
230 struct rnode4 *r_hashb; /* hash queue back pointer */ argument
231 struct rnode4 *r_freef; /* free list forward pointer */ argument
232 struct rnode4 *r_freeb; /* free list back pointer */ argument
233 r4hashq_t *r_hashq; /* pointer to the hash bucket */
235 svnode_t r_svnode; /* "master" shadow vnode for file */
236 kmutex_t r_svlock; /* serializes access to svnode list */
237 nfs_rwlock_t r_rwlock; /* serializes write/setattr requests */
238 nfs_rwlock_t r_lkserlock; /* serialize lock with other ops */
239 kmutex_t r_statelock; /* protects (most of) rnode contents */
240 nfs4_sharedfh_t *r_fh; /* file handle */
242 *r_server; /* current server */
243 u_offset_t r_nextr; /* next byte read offset (read-ahead) */
244 uint_t r_flags; /* flags, see below */
245 short r_error; /* async write error */
246 cred_t *r_unlcred; /* unlinked credentials */
247 char *r_unlname; /* unlinked file name */
248 vnode_t *r_unldvp; /* parent dir of unlinked file */
249 vnode_t *r_xattr_dir; /* cached xattr dir vnode */
250 len_t r_size; /* client's view of file size */
251 vattr_t r_attr; /* cached vnode attributes */
252 hrtime_t r_time_attr_saved; /* time attributes were cached */
253 hrtime_t r_time_attr_inval; /* time attributes become invalid */
254 hrtime_t r_time_cache_inval; /* time caches become invalid */
255 time_t r_delay_wait; /* future time for DELAY handling */
256 int r_delay_interval; /* Number of Secs of last DELAY */
257 time_t r_last_recov; /* time of last recovery operation */
258 nfs4_recov_t r_recov_act; /* action from last recovery op */
259 long r_mapcnt; /* count of mmapped pages */
260 uint_t r_count; /* # of refs not reflect in v_count */
261 uint_t r_awcount; /* # of outstanding async write */
262 uint_t r_gcount; /* getattrs waiting to flush pages */
263 kcondvar_t r_cv; /* condvar for blocked threads */
264 int (*r_putapage) /* address of putapage routine */
266 void *r_dir; /* cache of readdir responses */
267 rddir4_cache *r_direof; /* pointer to the EOF entry */
268 symlink_cache r_symlink; /* cached readlink response */
269 verifier4 r_writeverf; /* file data write verifier */
270 u_offset_t r_modaddr; /* address for page in writerp */
271 commit_t r_commit; /* commit information */
272 u_offset_t r_truncaddr; /* base for truncate operation */
273 vsecattr_t *r_secattr; /* cached security attributes (acls) */
274 verifier4 r_cookieverf4; /* version 4 readdir cookie verifier */
275 nfs4_pathconf_info_t r_pathconf; /* cached pathconf info */
276 acache4_t *r_acache; /* list of access cache entries */
277 list_t r_open_streams; /* open streams list */
278 kmutex_t r_os_lock; /* protects r_open_streams */
280 r_lo_head; /* lock owners list head */
281 int created_v4; /* 1 if file has been created in v4 */
282 kmutex_t r_statev4_lock; /* protects created_v4, state4ptr */
284 list_node_t r_deleg_link; /* linkage into list of */
287 r_deleg_type; /* type of delegation granted */
288 stateid4 r_deleg_stateid;
291 r_deleg_limit; /* file limits returned from */
293 nfsace4 r_deleg_perms; /* file permissions returned from */
295 fattr4_change r_deleg_change; /* current deleg change attr */
296 fattr4_change r_deleg_change_grant;
298 cred_t *r_deleg_cred; /* credential in force when the */
301 r_deleg_needs_recovery;
307 unsigned r_deleg_needs_recall:1;
311 unsigned r_deleg_return_pending:1;
315 unsigned r_deleg_return_inprog:1;
341 } rnode4_t; argument