Go to the documentation of this file.
15 #include <linux/list.h>
106 #define FIRST_NFS4_OP OP_ACCESS
107 #define LAST_NFS4_OP OP_RECLAIM_COMPLETE
220 static inline bool seqid_mutating_err(
u32 err)
314 #define FATTR4_WORD0_SUPPORTED_ATTRS (1UL << 0)
315 #define FATTR4_WORD0_TYPE (1UL << 1)
316 #define FATTR4_WORD0_FH_EXPIRE_TYPE (1UL << 2)
317 #define FATTR4_WORD0_CHANGE (1UL << 3)
318 #define FATTR4_WORD0_SIZE (1UL << 4)
319 #define FATTR4_WORD0_LINK_SUPPORT (1UL << 5)
320 #define FATTR4_WORD0_SYMLINK_SUPPORT (1UL << 6)
321 #define FATTR4_WORD0_NAMED_ATTR (1UL << 7)
322 #define FATTR4_WORD0_FSID (1UL << 8)
323 #define FATTR4_WORD0_UNIQUE_HANDLES (1UL << 9)
324 #define FATTR4_WORD0_LEASE_TIME (1UL << 10)
325 #define FATTR4_WORD0_RDATTR_ERROR (1UL << 11)
327 #define FATTR4_WORD2_SUPPATTR_EXCLCREAT (1UL << 11)
330 #define FATTR4_WORD0_ACL (1UL << 12)
331 #define FATTR4_WORD0_ACLSUPPORT (1UL << 13)
332 #define FATTR4_WORD0_ARCHIVE (1UL << 14)
333 #define FATTR4_WORD0_CANSETTIME (1UL << 15)
334 #define FATTR4_WORD0_CASE_INSENSITIVE (1UL << 16)
335 #define FATTR4_WORD0_CASE_PRESERVING (1UL << 17)
336 #define FATTR4_WORD0_CHOWN_RESTRICTED (1UL << 18)
337 #define FATTR4_WORD0_FILEHANDLE (1UL << 19)
338 #define FATTR4_WORD0_FILEID (1UL << 20)
339 #define FATTR4_WORD0_FILES_AVAIL (1UL << 21)
340 #define FATTR4_WORD0_FILES_FREE (1UL << 22)
341 #define FATTR4_WORD0_FILES_TOTAL (1UL << 23)
342 #define FATTR4_WORD0_FS_LOCATIONS (1UL << 24)
343 #define FATTR4_WORD0_HIDDEN (1UL << 25)
344 #define FATTR4_WORD0_HOMOGENEOUS (1UL << 26)
345 #define FATTR4_WORD0_MAXFILESIZE (1UL << 27)
346 #define FATTR4_WORD0_MAXLINK (1UL << 28)
347 #define FATTR4_WORD0_MAXNAME (1UL << 29)
348 #define FATTR4_WORD0_MAXREAD (1UL << 30)
349 #define FATTR4_WORD0_MAXWRITE (1UL << 31)
350 #define FATTR4_WORD1_MIMETYPE (1UL << 0)
351 #define FATTR4_WORD1_MODE (1UL << 1)
352 #define FATTR4_WORD1_NO_TRUNC (1UL << 2)
353 #define FATTR4_WORD1_NUMLINKS (1UL << 3)
354 #define FATTR4_WORD1_OWNER (1UL << 4)
355 #define FATTR4_WORD1_OWNER_GROUP (1UL << 5)
356 #define FATTR4_WORD1_QUOTA_HARD (1UL << 6)
357 #define FATTR4_WORD1_QUOTA_SOFT (1UL << 7)
358 #define FATTR4_WORD1_QUOTA_USED (1UL << 8)
359 #define FATTR4_WORD1_RAWDEV (1UL << 9)
360 #define FATTR4_WORD1_SPACE_AVAIL (1UL << 10)
361 #define FATTR4_WORD1_SPACE_FREE (1UL << 11)
362 #define FATTR4_WORD1_SPACE_TOTAL (1UL << 12)
363 #define FATTR4_WORD1_SPACE_USED (1UL << 13)
364 #define FATTR4_WORD1_SYSTEM (1UL << 14)
365 #define FATTR4_WORD1_TIME_ACCESS (1UL << 15)
366 #define FATTR4_WORD1_TIME_ACCESS_SET (1UL << 16)
367 #define FATTR4_WORD1_TIME_BACKUP (1UL << 17)
368 #define FATTR4_WORD1_TIME_CREATE (1UL << 18)
369 #define FATTR4_WORD1_TIME_DELTA (1UL << 19)
370 #define FATTR4_WORD1_TIME_METADATA (1UL << 20)
371 #define FATTR4_WORD1_TIME_MODIFY (1UL << 21)
372 #define FATTR4_WORD1_TIME_MODIFY_SET (1UL << 22)
373 #define FATTR4_WORD1_MOUNTED_ON_FILEID (1UL << 23)
374 #define FATTR4_WORD1_FS_LAYOUT_TYPES (1UL << 30)
375 #define FATTR4_WORD2_LAYOUT_BLKSIZE (1UL << 1)
376 #define FATTR4_WORD2_MDSTHRESHOLD (1UL << 4)
379 #define THRESHOLD_RD (1UL << 0)
380 #define THRESHOLD_WR (1UL << 1)
381 #define THRESHOLD_RD_IO (1UL << 2)
382 #define THRESHOLD_WR_IO (1UL << 3)
384 #define NFSPROC4_NULL 0
385 #define NFSPROC4_COMPOUND 1
386 #define NFS4_VERSION 4
387 #define NFS4_MINOR_VERSION 0
389 #if defined(CONFIG_NFS_V4_1)
390 #define NFS4_MAX_MINOR_VERSION 1
392 #define NFS4_MAX_MINOR_VERSION 0
463 #define SESSION4_PERSIST 0x001
464 #define SESSION4_BACK_CHAN 0x002
465 #define SESSION4_RDMA 0x004
467 #define SESSION4_FLAG_MASK_A 0x007
499 #define NFL4_UFLG_MASK 0x0000003F
500 #define NFL4_UFLG_DENSE 0x00000001
501 #define NFL4_UFLG_COMMIT_THRU_MDS 0x00000002
502 #define NFL4_UFLG_STRIPE_UNIT_SIZE_MASK 0xFFFFFFC0
512 #define NFS4_DEVICEID4_SIZE 16