1247c01ffSChuck Lever /* SPDX-License-Identifier: GPL-2.0 */ 2247c01ffSChuck Lever /* 3247c01ffSChuck Lever * Display helpers for NFS protocol elements 4247c01ffSChuck Lever * 5247c01ffSChuck Lever * Author: Chuck Lever <chuck.lever@oracle.com> 6247c01ffSChuck Lever * 7247c01ffSChuck Lever * Copyright (c) 2020, Oracle and/or its affiliates. 8247c01ffSChuck Lever */ 9247c01ffSChuck Lever 10247c01ffSChuck Lever #include <linux/nfs.h> 11247c01ffSChuck Lever #include <linux/nfs4.h> 12247c01ffSChuck Lever #include <uapi/linux/nfs.h> 13247c01ffSChuck Lever 14247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS_OK); 15247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_PERM); 16247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NOENT); 17247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_IO); 18247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NXIO); 19247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_EAGAIN); 20247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_ACCES); 21247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_EXIST); 22247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_XDEV); 23247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NODEV); 24247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NOTDIR); 25247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_ISDIR); 26247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_INVAL); 27247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_FBIG); 28247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NOSPC); 29247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_ROFS); 30247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_MLINK); 31247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_OPNOTSUPP); 32247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NAMETOOLONG); 33247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NOTEMPTY); 34247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_DQUOT); 35247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_STALE); 36247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_REMOTE); 37247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_WFLUSH); 38247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_BADHANDLE); 39247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NOT_SYNC); 40247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_BAD_COOKIE); 41247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_NOTSUPP); 42247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_TOOSMALL); 43247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_SERVERFAULT); 44247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_BADTYPE); 45247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFSERR_JUKEBOX); 46247c01ffSChuck Lever 47247c01ffSChuck Lever #define show_nfs_status(x) \ 48247c01ffSChuck Lever __print_symbolic(x, \ 49247c01ffSChuck Lever { NFS_OK, "OK" }, \ 50247c01ffSChuck Lever { NFSERR_PERM, "PERM" }, \ 51247c01ffSChuck Lever { NFSERR_NOENT, "NOENT" }, \ 52247c01ffSChuck Lever { NFSERR_IO, "IO" }, \ 53247c01ffSChuck Lever { NFSERR_NXIO, "NXIO" }, \ 54247c01ffSChuck Lever { ECHILD, "CHILD" }, \ 55247c01ffSChuck Lever { NFSERR_EAGAIN, "AGAIN" }, \ 56247c01ffSChuck Lever { NFSERR_ACCES, "ACCES" }, \ 57247c01ffSChuck Lever { NFSERR_EXIST, "EXIST" }, \ 58247c01ffSChuck Lever { NFSERR_XDEV, "XDEV" }, \ 59247c01ffSChuck Lever { NFSERR_NODEV, "NODEV" }, \ 60247c01ffSChuck Lever { NFSERR_NOTDIR, "NOTDIR" }, \ 61247c01ffSChuck Lever { NFSERR_ISDIR, "ISDIR" }, \ 62247c01ffSChuck Lever { NFSERR_INVAL, "INVAL" }, \ 63247c01ffSChuck Lever { NFSERR_FBIG, "FBIG" }, \ 64247c01ffSChuck Lever { NFSERR_NOSPC, "NOSPC" }, \ 65247c01ffSChuck Lever { NFSERR_ROFS, "ROFS" }, \ 66247c01ffSChuck Lever { NFSERR_MLINK, "MLINK" }, \ 67247c01ffSChuck Lever { NFSERR_OPNOTSUPP, "OPNOTSUPP" }, \ 68247c01ffSChuck Lever { NFSERR_NAMETOOLONG, "NAMETOOLONG" }, \ 69247c01ffSChuck Lever { NFSERR_NOTEMPTY, "NOTEMPTY" }, \ 70247c01ffSChuck Lever { NFSERR_DQUOT, "DQUOT" }, \ 71247c01ffSChuck Lever { NFSERR_STALE, "STALE" }, \ 72247c01ffSChuck Lever { NFSERR_REMOTE, "REMOTE" }, \ 73247c01ffSChuck Lever { NFSERR_WFLUSH, "WFLUSH" }, \ 74247c01ffSChuck Lever { NFSERR_BADHANDLE, "BADHANDLE" }, \ 75247c01ffSChuck Lever { NFSERR_NOT_SYNC, "NOTSYNC" }, \ 76247c01ffSChuck Lever { NFSERR_BAD_COOKIE, "BADCOOKIE" }, \ 77247c01ffSChuck Lever { NFSERR_NOTSUPP, "NOTSUPP" }, \ 78247c01ffSChuck Lever { NFSERR_TOOSMALL, "TOOSMALL" }, \ 79247c01ffSChuck Lever { NFSERR_SERVERFAULT, "REMOTEIO" }, \ 80247c01ffSChuck Lever { NFSERR_BADTYPE, "BADTYPE" }, \ 81247c01ffSChuck Lever { NFSERR_JUKEBOX, "JUKEBOX" }) 82247c01ffSChuck Lever 83247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS_UNSTABLE); 84247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS_DATA_SYNC); 85247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS_FILE_SYNC); 86247c01ffSChuck Lever 87247c01ffSChuck Lever #define show_nfs_stable_how(x) \ 88247c01ffSChuck Lever __print_symbolic(x, \ 89247c01ffSChuck Lever { NFS_UNSTABLE, "UNSTABLE" }, \ 90247c01ffSChuck Lever { NFS_DATA_SYNC, "DATA_SYNC" }, \ 91247c01ffSChuck Lever { NFS_FILE_SYNC, "FILE_SYNC" }) 92247c01ffSChuck Lever 93247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4_OK); 94247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_ACCESS); 95247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_ATTRNOTSUPP); 96247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_ADMIN_REVOKED); 97247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BACK_CHAN_BUSY); 98247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADCHAR); 99247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADHANDLE); 100247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADIOMODE); 101247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADLAYOUT); 102247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADLABEL); 103247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADNAME); 104247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADOWNER); 105247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADSESSION); 106247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADSLOT); 107247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADTYPE); 108247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BADXDR); 109247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BAD_COOKIE); 110247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BAD_HIGH_SLOT); 111247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BAD_RANGE); 112247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BAD_SEQID); 113247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BAD_SESSION_DIGEST); 114247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_BAD_STATEID); 115247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_CB_PATH_DOWN); 116247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_CLID_INUSE); 117247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_CLIENTID_BUSY); 118247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_COMPLETE_ALREADY); 119247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_CONN_NOT_BOUND_TO_SESSION); 120247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_DEADLOCK); 121247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_DEADSESSION); 122247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_DELAY); 123247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_DELEG_ALREADY_WANTED); 124247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_DELEG_REVOKED); 125247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_DENIED); 126247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_DIRDELEG_UNAVAIL); 127247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_DQUOT); 128247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_ENCR_ALG_UNSUPP); 129247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_EXIST); 130247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_EXPIRED); 131247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_FBIG); 132247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_FHEXPIRED); 133247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_FILE_OPEN); 134247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_GRACE); 135247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_HASH_ALG_UNSUPP); 136247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_INVAL); 137247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_IO); 138247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_ISDIR); 139247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_LAYOUTTRYLATER); 140247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_LAYOUTUNAVAILABLE); 141247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_LEASE_MOVED); 142247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_LOCKED); 143247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_LOCKS_HELD); 144247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_LOCK_RANGE); 145247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_MINOR_VERS_MISMATCH); 146247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_MLINK); 147247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_MOVED); 148247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NAMETOOLONG); 149247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOENT); 150247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOFILEHANDLE); 151247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOMATCHING_LAYOUT); 152247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOSPC); 153247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOTDIR); 154247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOTEMPTY); 155247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOTSUPP); 156247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOT_ONLY_OP); 157247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NOT_SAME); 158247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NO_GRACE); 159247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_NXIO); 160247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_OLD_STATEID); 161247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_OPENMODE); 162247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_OP_ILLEGAL); 163247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_OP_NOT_IN_SESSION); 164247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_PERM); 165247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_PNFS_IO_HOLE); 166247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_PNFS_NO_LAYOUT); 167247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RECALLCONFLICT); 168247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RECLAIM_BAD); 169247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RECLAIM_CONFLICT); 170247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_REJECT_DELEG); 171247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_REP_TOO_BIG); 172247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_REP_TOO_BIG_TO_CACHE); 173247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_REQ_TOO_BIG); 174247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RESOURCE); 175247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RESTOREFH); 176247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RETRY_UNCACHED_REP); 177247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RETURNCONFLICT); 178247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_ROFS); 179247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_SAME); 180247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_SHARE_DENIED); 181247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_SEQUENCE_POS); 182247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_SEQ_FALSE_RETRY); 183247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_SEQ_MISORDERED); 184247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_SERVERFAULT); 185247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_STALE); 186247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_STALE_CLIENTID); 187247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_STALE_STATEID); 188247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_SYMLINK); 189247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_TOOSMALL); 190247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_TOO_MANY_OPS); 191247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_UNKNOWN_LAYOUTTYPE); 192247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_UNSAFE_COMPOUND); 193247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_WRONGSEC); 194247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_WRONG_CRED); 195247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_WRONG_TYPE); 196247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_XDEV); 197247c01ffSChuck Lever 198247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RESET_TO_MDS); 199247c01ffSChuck Lever TRACE_DEFINE_ENUM(NFS4ERR_RESET_TO_PNFS); 200247c01ffSChuck Lever 201247c01ffSChuck Lever #define show_nfs4_status(x) \ 202247c01ffSChuck Lever __print_symbolic(x, \ 203247c01ffSChuck Lever { NFS4_OK, "OK" }, \ 204247c01ffSChuck Lever { EPERM, "EPERM" }, \ 205247c01ffSChuck Lever { ENOENT, "ENOENT" }, \ 206247c01ffSChuck Lever { EIO, "EIO" }, \ 207247c01ffSChuck Lever { ENXIO, "ENXIO" }, \ 208247c01ffSChuck Lever { EACCES, "EACCES" }, \ 209247c01ffSChuck Lever { EEXIST, "EEXIST" }, \ 210247c01ffSChuck Lever { EXDEV, "EXDEV" }, \ 211247c01ffSChuck Lever { ENOTDIR, "ENOTDIR" }, \ 212247c01ffSChuck Lever { EISDIR, "EISDIR" }, \ 213247c01ffSChuck Lever { EFBIG, "EFBIG" }, \ 214247c01ffSChuck Lever { ENOSPC, "ENOSPC" }, \ 215247c01ffSChuck Lever { EROFS, "EROFS" }, \ 216247c01ffSChuck Lever { EMLINK, "EMLINK" }, \ 217247c01ffSChuck Lever { ENAMETOOLONG, "ENAMETOOLONG" }, \ 218247c01ffSChuck Lever { ENOTEMPTY, "ENOTEMPTY" }, \ 219247c01ffSChuck Lever { EDQUOT, "EDQUOT" }, \ 220247c01ffSChuck Lever { ESTALE, "ESTALE" }, \ 221247c01ffSChuck Lever { EBADHANDLE, "EBADHANDLE" }, \ 222247c01ffSChuck Lever { EBADCOOKIE, "EBADCOOKIE" }, \ 223247c01ffSChuck Lever { ENOTSUPP, "ENOTSUPP" }, \ 224247c01ffSChuck Lever { ETOOSMALL, "ETOOSMALL" }, \ 225247c01ffSChuck Lever { EREMOTEIO, "EREMOTEIO" }, \ 226247c01ffSChuck Lever { EBADTYPE, "EBADTYPE" }, \ 227247c01ffSChuck Lever { EAGAIN, "EAGAIN" }, \ 228247c01ffSChuck Lever { ELOOP, "ELOOP" }, \ 229247c01ffSChuck Lever { EOPNOTSUPP, "EOPNOTSUPP" }, \ 230247c01ffSChuck Lever { EDEADLK, "EDEADLK" }, \ 231247c01ffSChuck Lever { ENOMEM, "ENOMEM" }, \ 232247c01ffSChuck Lever { EKEYEXPIRED, "EKEYEXPIRED" }, \ 233247c01ffSChuck Lever { ETIMEDOUT, "ETIMEDOUT" }, \ 234247c01ffSChuck Lever { ERESTARTSYS, "ERESTARTSYS" }, \ 235247c01ffSChuck Lever { ECONNREFUSED, "ECONNREFUSED" }, \ 236247c01ffSChuck Lever { ECONNRESET, "ECONNRESET" }, \ 237247c01ffSChuck Lever { ENETUNREACH, "ENETUNREACH" }, \ 238247c01ffSChuck Lever { EHOSTUNREACH, "EHOSTUNREACH" }, \ 239247c01ffSChuck Lever { EHOSTDOWN, "EHOSTDOWN" }, \ 240247c01ffSChuck Lever { EPIPE, "EPIPE" }, \ 241247c01ffSChuck Lever { EPFNOSUPPORT, "EPFNOSUPPORT" }, \ 242247c01ffSChuck Lever { EPROTONOSUPPORT, "EPROTONOSUPPORT" }, \ 243247c01ffSChuck Lever { NFS4ERR_ACCESS, "ACCESS" }, \ 244247c01ffSChuck Lever { NFS4ERR_ATTRNOTSUPP, "ATTRNOTSUPP" }, \ 245247c01ffSChuck Lever { NFS4ERR_ADMIN_REVOKED, "ADMIN_REVOKED" }, \ 246247c01ffSChuck Lever { NFS4ERR_BACK_CHAN_BUSY, "BACK_CHAN_BUSY" }, \ 247247c01ffSChuck Lever { NFS4ERR_BADCHAR, "BADCHAR" }, \ 248247c01ffSChuck Lever { NFS4ERR_BADHANDLE, "BADHANDLE" }, \ 249247c01ffSChuck Lever { NFS4ERR_BADIOMODE, "BADIOMODE" }, \ 250247c01ffSChuck Lever { NFS4ERR_BADLAYOUT, "BADLAYOUT" }, \ 251247c01ffSChuck Lever { NFS4ERR_BADLABEL, "BADLABEL" }, \ 252247c01ffSChuck Lever { NFS4ERR_BADNAME, "BADNAME" }, \ 253247c01ffSChuck Lever { NFS4ERR_BADOWNER, "BADOWNER" }, \ 254247c01ffSChuck Lever { NFS4ERR_BADSESSION, "BADSESSION" }, \ 255247c01ffSChuck Lever { NFS4ERR_BADSLOT, "BADSLOT" }, \ 256247c01ffSChuck Lever { NFS4ERR_BADTYPE, "BADTYPE" }, \ 257247c01ffSChuck Lever { NFS4ERR_BADXDR, "BADXDR" }, \ 258247c01ffSChuck Lever { NFS4ERR_BAD_COOKIE, "BAD_COOKIE" }, \ 259247c01ffSChuck Lever { NFS4ERR_BAD_HIGH_SLOT, "BAD_HIGH_SLOT" }, \ 260247c01ffSChuck Lever { NFS4ERR_BAD_RANGE, "BAD_RANGE" }, \ 261247c01ffSChuck Lever { NFS4ERR_BAD_SEQID, "BAD_SEQID" }, \ 262247c01ffSChuck Lever { NFS4ERR_BAD_SESSION_DIGEST, "BAD_SESSION_DIGEST" }, \ 263247c01ffSChuck Lever { NFS4ERR_BAD_STATEID, "BAD_STATEID" }, \ 264247c01ffSChuck Lever { NFS4ERR_CB_PATH_DOWN, "CB_PATH_DOWN" }, \ 265247c01ffSChuck Lever { NFS4ERR_CLID_INUSE, "CLID_INUSE" }, \ 266247c01ffSChuck Lever { NFS4ERR_CLIENTID_BUSY, "CLIENTID_BUSY" }, \ 267247c01ffSChuck Lever { NFS4ERR_COMPLETE_ALREADY, "COMPLETE_ALREADY" }, \ 268247c01ffSChuck Lever { NFS4ERR_CONN_NOT_BOUND_TO_SESSION, "CONN_NOT_BOUND_TO_SESSION" }, \ 269247c01ffSChuck Lever { NFS4ERR_DEADLOCK, "DEADLOCK" }, \ 270247c01ffSChuck Lever { NFS4ERR_DEADSESSION, "DEAD_SESSION" }, \ 271247c01ffSChuck Lever { NFS4ERR_DELAY, "DELAY" }, \ 272247c01ffSChuck Lever { NFS4ERR_DELEG_ALREADY_WANTED, "DELEG_ALREADY_WANTED" }, \ 273247c01ffSChuck Lever { NFS4ERR_DELEG_REVOKED, "DELEG_REVOKED" }, \ 274247c01ffSChuck Lever { NFS4ERR_DENIED, "DENIED" }, \ 275247c01ffSChuck Lever { NFS4ERR_DIRDELEG_UNAVAIL, "DIRDELEG_UNAVAIL" }, \ 276247c01ffSChuck Lever { NFS4ERR_DQUOT, "DQUOT" }, \ 277247c01ffSChuck Lever { NFS4ERR_ENCR_ALG_UNSUPP, "ENCR_ALG_UNSUPP" }, \ 278247c01ffSChuck Lever { NFS4ERR_EXIST, "EXIST" }, \ 279247c01ffSChuck Lever { NFS4ERR_EXPIRED, "EXPIRED" }, \ 280247c01ffSChuck Lever { NFS4ERR_FBIG, "FBIG" }, \ 281247c01ffSChuck Lever { NFS4ERR_FHEXPIRED, "FHEXPIRED" }, \ 282247c01ffSChuck Lever { NFS4ERR_FILE_OPEN, "FILE_OPEN" }, \ 283247c01ffSChuck Lever { NFS4ERR_GRACE, "GRACE" }, \ 284247c01ffSChuck Lever { NFS4ERR_HASH_ALG_UNSUPP, "HASH_ALG_UNSUPP" }, \ 285247c01ffSChuck Lever { NFS4ERR_INVAL, "INVAL" }, \ 286247c01ffSChuck Lever { NFS4ERR_IO, "IO" }, \ 287247c01ffSChuck Lever { NFS4ERR_ISDIR, "ISDIR" }, \ 288247c01ffSChuck Lever { NFS4ERR_LAYOUTTRYLATER, "LAYOUTTRYLATER" }, \ 289247c01ffSChuck Lever { NFS4ERR_LAYOUTUNAVAILABLE, "LAYOUTUNAVAILABLE" }, \ 290247c01ffSChuck Lever { NFS4ERR_LEASE_MOVED, "LEASE_MOVED" }, \ 291247c01ffSChuck Lever { NFS4ERR_LOCKED, "LOCKED" }, \ 292247c01ffSChuck Lever { NFS4ERR_LOCKS_HELD, "LOCKS_HELD" }, \ 293247c01ffSChuck Lever { NFS4ERR_LOCK_RANGE, "LOCK_RANGE" }, \ 294247c01ffSChuck Lever { NFS4ERR_MINOR_VERS_MISMATCH, "MINOR_VERS_MISMATCH" }, \ 295247c01ffSChuck Lever { NFS4ERR_MLINK, "MLINK" }, \ 296247c01ffSChuck Lever { NFS4ERR_MOVED, "MOVED" }, \ 297247c01ffSChuck Lever { NFS4ERR_NAMETOOLONG, "NAMETOOLONG" }, \ 298247c01ffSChuck Lever { NFS4ERR_NOENT, "NOENT" }, \ 299247c01ffSChuck Lever { NFS4ERR_NOFILEHANDLE, "NOFILEHANDLE" }, \ 300247c01ffSChuck Lever { NFS4ERR_NOMATCHING_LAYOUT, "NOMATCHING_LAYOUT" }, \ 301247c01ffSChuck Lever { NFS4ERR_NOSPC, "NOSPC" }, \ 302247c01ffSChuck Lever { NFS4ERR_NOTDIR, "NOTDIR" }, \ 303247c01ffSChuck Lever { NFS4ERR_NOTEMPTY, "NOTEMPTY" }, \ 304247c01ffSChuck Lever { NFS4ERR_NOTSUPP, "NOTSUPP" }, \ 305247c01ffSChuck Lever { NFS4ERR_NOT_ONLY_OP, "NOT_ONLY_OP" }, \ 306247c01ffSChuck Lever { NFS4ERR_NOT_SAME, "NOT_SAME" }, \ 307247c01ffSChuck Lever { NFS4ERR_NO_GRACE, "NO_GRACE" }, \ 308247c01ffSChuck Lever { NFS4ERR_NXIO, "NXIO" }, \ 309247c01ffSChuck Lever { NFS4ERR_OLD_STATEID, "OLD_STATEID" }, \ 310247c01ffSChuck Lever { NFS4ERR_OPENMODE, "OPENMODE" }, \ 311247c01ffSChuck Lever { NFS4ERR_OP_ILLEGAL, "OP_ILLEGAL" }, \ 312247c01ffSChuck Lever { NFS4ERR_OP_NOT_IN_SESSION, "OP_NOT_IN_SESSION" }, \ 313247c01ffSChuck Lever { NFS4ERR_PERM, "PERM" }, \ 314247c01ffSChuck Lever { NFS4ERR_PNFS_IO_HOLE, "PNFS_IO_HOLE" }, \ 315247c01ffSChuck Lever { NFS4ERR_PNFS_NO_LAYOUT, "PNFS_NO_LAYOUT" }, \ 316247c01ffSChuck Lever { NFS4ERR_RECALLCONFLICT, "RECALLCONFLICT" }, \ 317247c01ffSChuck Lever { NFS4ERR_RECLAIM_BAD, "RECLAIM_BAD" }, \ 318247c01ffSChuck Lever { NFS4ERR_RECLAIM_CONFLICT, "RECLAIM_CONFLICT" }, \ 319247c01ffSChuck Lever { NFS4ERR_REJECT_DELEG, "REJECT_DELEG" }, \ 320247c01ffSChuck Lever { NFS4ERR_REP_TOO_BIG, "REP_TOO_BIG" }, \ 321247c01ffSChuck Lever { NFS4ERR_REP_TOO_BIG_TO_CACHE, "REP_TOO_BIG_TO_CACHE" }, \ 322247c01ffSChuck Lever { NFS4ERR_REQ_TOO_BIG, "REQ_TOO_BIG" }, \ 323247c01ffSChuck Lever { NFS4ERR_RESOURCE, "RESOURCE" }, \ 324247c01ffSChuck Lever { NFS4ERR_RESTOREFH, "RESTOREFH" }, \ 325247c01ffSChuck Lever { NFS4ERR_RETRY_UNCACHED_REP, "RETRY_UNCACHED_REP" }, \ 326247c01ffSChuck Lever { NFS4ERR_RETURNCONFLICT, "RETURNCONFLICT" }, \ 327247c01ffSChuck Lever { NFS4ERR_ROFS, "ROFS" }, \ 328247c01ffSChuck Lever { NFS4ERR_SAME, "SAME" }, \ 329247c01ffSChuck Lever { NFS4ERR_SHARE_DENIED, "SHARE_DENIED" }, \ 330247c01ffSChuck Lever { NFS4ERR_SEQUENCE_POS, "SEQUENCE_POS" }, \ 331247c01ffSChuck Lever { NFS4ERR_SEQ_FALSE_RETRY, "SEQ_FALSE_RETRY" }, \ 332247c01ffSChuck Lever { NFS4ERR_SEQ_MISORDERED, "SEQ_MISORDERED" }, \ 333247c01ffSChuck Lever { NFS4ERR_SERVERFAULT, "SERVERFAULT" }, \ 334247c01ffSChuck Lever { NFS4ERR_STALE, "STALE" }, \ 335247c01ffSChuck Lever { NFS4ERR_STALE_CLIENTID, "STALE_CLIENTID" }, \ 336247c01ffSChuck Lever { NFS4ERR_STALE_STATEID, "STALE_STATEID" }, \ 337247c01ffSChuck Lever { NFS4ERR_SYMLINK, "SYMLINK" }, \ 338247c01ffSChuck Lever { NFS4ERR_TOOSMALL, "TOOSMALL" }, \ 339247c01ffSChuck Lever { NFS4ERR_TOO_MANY_OPS, "TOO_MANY_OPS" }, \ 340247c01ffSChuck Lever { NFS4ERR_UNKNOWN_LAYOUTTYPE, "UNKNOWN_LAYOUTTYPE" }, \ 341247c01ffSChuck Lever { NFS4ERR_UNSAFE_COMPOUND, "UNSAFE_COMPOUND" }, \ 342247c01ffSChuck Lever { NFS4ERR_WRONGSEC, "WRONGSEC" }, \ 343247c01ffSChuck Lever { NFS4ERR_WRONG_CRED, "WRONG_CRED" }, \ 344247c01ffSChuck Lever { NFS4ERR_WRONG_TYPE, "WRONG_TYPE" }, \ 345247c01ffSChuck Lever { NFS4ERR_XDEV, "XDEV" }, \ 346247c01ffSChuck Lever /* ***** Internal to Linux NFS client ***** */ \ 347247c01ffSChuck Lever { NFS4ERR_RESET_TO_MDS, "RESET_TO_MDS" }, \ 348247c01ffSChuck Lever { NFS4ERR_RESET_TO_PNFS, "RESET_TO_PNFS" }) 349247c01ffSChuck Lever 350247c01ffSChuck Lever #define show_nfs4_verifier(x) \ 351247c01ffSChuck Lever __print_hex_str(x, NFS4_VERIFIER_SIZE) 352247c01ffSChuck Lever 353247c01ffSChuck Lever TRACE_DEFINE_ENUM(IOMODE_READ); 354247c01ffSChuck Lever TRACE_DEFINE_ENUM(IOMODE_RW); 355247c01ffSChuck Lever TRACE_DEFINE_ENUM(IOMODE_ANY); 356247c01ffSChuck Lever 357247c01ffSChuck Lever #define show_pnfs_layout_iomode(x) \ 358247c01ffSChuck Lever __print_symbolic(x, \ 359247c01ffSChuck Lever { IOMODE_READ, "READ" }, \ 360247c01ffSChuck Lever { IOMODE_RW, "RW" }, \ 361247c01ffSChuck Lever { IOMODE_ANY, "ANY" }) 362247c01ffSChuck Lever 363*638593beSDai Ngo #define show_rca_mask(x) \ 364*638593beSDai Ngo __print_flags(x, "|", \ 365*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_RDATA_DLG), "RDATA_DLG" }, \ 366*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_WDATA_DLG), "WDATA_DLG" }, \ 367*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_DIR_DLG), "DIR_DLG" }, \ 368*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_FILE_LAYOUT), "FILE_LAYOUT" }, \ 369*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_BLK_LAYOUT), "BLK_LAYOUT" }, \ 370*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_OBJ_LAYOUT_MIN), "OBJ_LAYOUT_MIN" }, \ 371*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_OBJ_LAYOUT_MAX), "OBJ_LAYOUT_MAX" }, \ 372*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_OTHER_LAYOUT_MIN), "OTHER_LAYOUT_MIN" }, \ 373*638593beSDai Ngo { BIT(RCA4_TYPE_MASK_OTHER_LAYOUT_MAX), "OTHER_LAYOUT_MAX" }) 374*638593beSDai Ngo 375247c01ffSChuck Lever #define show_nfs4_seq4_status(x) \ 376247c01ffSChuck Lever __print_flags(x, "|", \ 377247c01ffSChuck Lever { SEQ4_STATUS_CB_PATH_DOWN, "CB_PATH_DOWN" }, \ 378247c01ffSChuck Lever { SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRING, "CB_GSS_CONTEXTS_EXPIRING" }, \ 379247c01ffSChuck Lever { SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRED, "CB_GSS_CONTEXTS_EXPIRED" }, \ 380247c01ffSChuck Lever { SEQ4_STATUS_EXPIRED_ALL_STATE_REVOKED, "EXPIRED_ALL_STATE_REVOKED" }, \ 381247c01ffSChuck Lever { SEQ4_STATUS_EXPIRED_SOME_STATE_REVOKED, "EXPIRED_SOME_STATE_REVOKED" }, \ 382247c01ffSChuck Lever { SEQ4_STATUS_ADMIN_STATE_REVOKED, "ADMIN_STATE_REVOKED" }, \ 383247c01ffSChuck Lever { SEQ4_STATUS_RECALLABLE_STATE_REVOKED, "RECALLABLE_STATE_REVOKED" }, \ 384247c01ffSChuck Lever { SEQ4_STATUS_LEASE_MOVED, "LEASE_MOVED" }, \ 385247c01ffSChuck Lever { SEQ4_STATUS_RESTART_RECLAIM_NEEDED, "RESTART_RECLAIM_NEEDED" }, \ 386247c01ffSChuck Lever { SEQ4_STATUS_CB_PATH_DOWN_SESSION, "CB_PATH_DOWN_SESSION" }, \ 387247c01ffSChuck Lever { SEQ4_STATUS_BACKCHANNEL_FAULT, "BACKCHANNEL_FAULT" }) 388