Re: [PATCH v3] trace: Relocate event helper files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Nov 17, 2022, at 9:27 AM, Chuck Lever <chuck.lever@xxxxxxxxxx> wrote:
> 
> Steven Rostedt says:
>> The include/trace/events/ directory should only hold files that
>> are to create events, not headers that hold helper functions.
>> 
>> Can you please move them out of include/trace/events/ as that
>> directory is "special" in the creation of events.
> 
> Signed-off-by: Chuck Lever <chuck.lever@xxxxxxxxxx>
> Acked-by: Leon Romanovsky <leonro@xxxxxxxxxx>
> Acked-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>
> ---
> MAINTAINERS                         |    7 +
> drivers/infiniband/core/cm_trace.h  |    2 
> drivers/infiniband/core/cma_trace.h |    2 
> fs/nfs/nfs4trace.h                  |    6 -
> fs/nfs/nfstrace.h                   |    6 -
> include/trace/events/fs.h           |  122 -----------
> include/trace/events/nfs.h          |  375 -----------------------------------
> include/trace/events/rdma.h         |  168 ----------------
> include/trace/events/rpcgss.h       |    2 
> include/trace/events/rpcrdma.h      |    4 
> include/trace/events/sunrpc.h       |    2 
> include/trace/events/sunrpc_base.h  |   18 --
> include/trace/misc/fs.h             |  122 +++++++++++
> include/trace/misc/nfs.h            |  375 +++++++++++++++++++++++++++++++++++
> include/trace/misc/rdma.h           |  168 ++++++++++++++++
> include/trace/misc/sunrpc.h         |   18 ++
> 16 files changed, 702 insertions(+), 695 deletions(-)
> delete mode 100644 include/trace/events/fs.h
> delete mode 100644 include/trace/events/nfs.h
> delete mode 100644 include/trace/events/rdma.h
> delete mode 100644 include/trace/events/sunrpc_base.h
> create mode 100644 include/trace/misc/fs.h
> create mode 100644 include/trace/misc/nfs.h
> create mode 100644 include/trace/misc/rdma.h
> create mode 100644 include/trace/misc/sunrpc.h
> 
> Note: with an Acked-by from both the NFS client and RDMA core
> maintainers I can take this through the nfsd for-next tree, unless
> someone has another suggestion.
> 
> Still missing Acks from the NFS maintainers.

Nudge.


> Changes since v2:
> - Add Acks from Leon and Steven
> - Update MAINTAINERS for RPC-related include files
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 84f7496dd950..181ae044c9f3 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -10055,6 +10055,7 @@ F:	drivers/infiniband/
> F:	include/rdma/
> F:	include/trace/events/ib_mad.h
> F:	include/trace/events/ib_umad.h
> +F:	include/trace/misc/rdma.h
> F:	include/uapi/linux/if_infiniband.h
> F:	include/uapi/rdma/
> F:	samples/bpf/ibumad_kern.c
> @@ -11137,6 +11138,12 @@ F:	fs/nfs_common/
> F:	fs/nfsd/
> F:	include/linux/lockd/
> F:	include/linux/sunrpc/
> +F:	include/trace/events/rpcgss.h
> +F:	include/trace/events/rpcrdma.h
> +F:	include/trace/events/sunrpc.h
> +F:	include/trace/misc/fs.h
> +F:	include/trace/misc/nfs.h
> +F:	include/trace/misc/sunrpc.h
> F:	include/uapi/linux/nfsd/
> F:	include/uapi/linux/sunrpc/
> F:	net/sunrpc/
> diff --git a/drivers/infiniband/core/cm_trace.h b/drivers/infiniband/core/cm_trace.h
> index e9d282679ef1..944d9071245d 100644
> --- a/drivers/infiniband/core/cm_trace.h
> +++ b/drivers/infiniband/core/cm_trace.h
> @@ -16,7 +16,7 @@
> 
> #include <linux/tracepoint.h>
> #include <rdma/ib_cm.h>
> -#include <trace/events/rdma.h>
> +#include <trace/misc/rdma.h>
> 
> /*
>  * enum ib_cm_state, from include/rdma/ib_cm.h
> diff --git a/drivers/infiniband/core/cma_trace.h b/drivers/infiniband/core/cma_trace.h
> index e45264267bcc..47f3c6e4be89 100644
> --- a/drivers/infiniband/core/cma_trace.h
> +++ b/drivers/infiniband/core/cma_trace.h
> @@ -15,7 +15,7 @@
> #define _TRACE_RDMA_CMA_H
> 
> #include <linux/tracepoint.h>
> -#include <trace/events/rdma.h>
> +#include <trace/misc/rdma.h>
> 
> 
> DECLARE_EVENT_CLASS(cma_fsm_class,
> diff --git a/fs/nfs/nfs4trace.h b/fs/nfs/nfs4trace.h
> index 2cff5901c689..633cc64a04da 100644
> --- a/fs/nfs/nfs4trace.h
> +++ b/fs/nfs/nfs4trace.h
> @@ -9,10 +9,10 @@
> #define _TRACE_NFS4_H
> 
> #include <linux/tracepoint.h>
> -#include <trace/events/sunrpc_base.h>
> +#include <trace/misc/sunrpc.h>
> 
> -#include <trace/events/fs.h>
> -#include <trace/events/nfs.h>
> +#include <trace/misc/fs.h>
> +#include <trace/misc/nfs.h>
> 
> #define show_nfs_fattr_flags(valid) \
> 	__print_flags((unsigned long)valid, "|", \
> diff --git a/fs/nfs/nfstrace.h b/fs/nfs/nfstrace.h
> index 8c6cc58679ff..642f6921852f 100644
> --- a/fs/nfs/nfstrace.h
> +++ b/fs/nfs/nfstrace.h
> @@ -11,9 +11,9 @@
> #include <linux/tracepoint.h>
> #include <linux/iversion.h>
> 
> -#include <trace/events/fs.h>
> -#include <trace/events/nfs.h>
> -#include <trace/events/sunrpc_base.h>
> +#include <trace/misc/fs.h>
> +#include <trace/misc/nfs.h>
> +#include <trace/misc/sunrpc.h>
> 
> #define nfs_show_cache_validity(v) \
> 	__print_flags(v, "|", \
> diff --git a/include/trace/events/fs.h b/include/trace/events/fs.h
> deleted file mode 100644
> index 738b97f22f36..000000000000
> --- a/include/trace/events/fs.h
> +++ /dev/null
> @@ -1,122 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -/*
> - * Display helpers for generic filesystem items
> - *
> - * Author: Chuck Lever <chuck.lever@xxxxxxxxxx>
> - *
> - * Copyright (c) 2020, Oracle and/or its affiliates.
> - */
> -
> -#include <linux/fs.h>
> -
> -#define show_fs_dirent_type(x) \
> -	__print_symbolic(x, \
> -		{ DT_UNKNOWN,		"UNKNOWN" }, \
> -		{ DT_FIFO,		"FIFO" }, \
> -		{ DT_CHR,		"CHR" }, \
> -		{ DT_DIR,		"DIR" }, \
> -		{ DT_BLK,		"BLK" }, \
> -		{ DT_REG,		"REG" }, \
> -		{ DT_LNK,		"LNK" }, \
> -		{ DT_SOCK,		"SOCK" }, \
> -		{ DT_WHT,		"WHT" })
> -
> -#define show_fs_fcntl_open_flags(x) \
> -	__print_flags(x, "|", \
> -		{ O_WRONLY,		"O_WRONLY" }, \
> -		{ O_RDWR,		"O_RDWR" }, \
> -		{ O_CREAT,		"O_CREAT" }, \
> -		{ O_EXCL,		"O_EXCL" }, \
> -		{ O_NOCTTY,		"O_NOCTTY" }, \
> -		{ O_TRUNC,		"O_TRUNC" }, \
> -		{ O_APPEND,		"O_APPEND" }, \
> -		{ O_NONBLOCK,		"O_NONBLOCK" }, \
> -		{ O_DSYNC,		"O_DSYNC" }, \
> -		{ O_DIRECT,		"O_DIRECT" }, \
> -		{ O_LARGEFILE,		"O_LARGEFILE" }, \
> -		{ O_DIRECTORY,		"O_DIRECTORY" }, \
> -		{ O_NOFOLLOW,		"O_NOFOLLOW" }, \
> -		{ O_NOATIME,		"O_NOATIME" }, \
> -		{ O_CLOEXEC,		"O_CLOEXEC" })
> -
> -#define __fmode_flag(x)	{ (__force unsigned long)FMODE_##x, #x }
> -#define show_fs_fmode_flags(x) \
> -	__print_flags(x, "|", \
> -		__fmode_flag(READ), \
> -		__fmode_flag(WRITE), \
> -		__fmode_flag(EXEC))
> -
> -#ifdef CONFIG_64BIT
> -#define show_fs_fcntl_cmd(x) \
> -	__print_symbolic(x, \
> -		{ F_DUPFD,		"DUPFD" }, \
> -		{ F_GETFD,		"GETFD" }, \
> -		{ F_SETFD,		"SETFD" }, \
> -		{ F_GETFL,		"GETFL" }, \
> -		{ F_SETFL,		"SETFL" }, \
> -		{ F_GETLK,		"GETLK" }, \
> -		{ F_SETLK,		"SETLK" }, \
> -		{ F_SETLKW,		"SETLKW" }, \
> -		{ F_SETOWN,		"SETOWN" }, \
> -		{ F_GETOWN,		"GETOWN" }, \
> -		{ F_SETSIG,		"SETSIG" }, \
> -		{ F_GETSIG,		"GETSIG" }, \
> -		{ F_SETOWN_EX,		"SETOWN_EX" }, \
> -		{ F_GETOWN_EX,		"GETOWN_EX" }, \
> -		{ F_GETOWNER_UIDS,	"GETOWNER_UIDS" }, \
> -		{ F_OFD_GETLK,		"OFD_GETLK" }, \
> -		{ F_OFD_SETLK,		"OFD_SETLK" }, \
> -		{ F_OFD_SETLKW,		"OFD_SETLKW" })
> -#else /* CONFIG_64BIT */
> -#define show_fs_fcntl_cmd(x) \
> -	__print_symbolic(x, \
> -		{ F_DUPFD,		"DUPFD" }, \
> -		{ F_GETFD,		"GETFD" }, \
> -		{ F_SETFD,		"SETFD" }, \
> -		{ F_GETFL,		"GETFL" }, \
> -		{ F_SETFL,		"SETFL" }, \
> -		{ F_GETLK,		"GETLK" }, \
> -		{ F_SETLK,		"SETLK" }, \
> -		{ F_SETLKW,		"SETLKW" }, \
> -		{ F_SETOWN,		"SETOWN" }, \
> -		{ F_GETOWN,		"GETOWN" }, \
> -		{ F_SETSIG,		"SETSIG" }, \
> -		{ F_GETSIG,		"GETSIG" }, \
> -		{ F_GETLK64,		"GETLK64" }, \
> -		{ F_SETLK64,		"SETLK64" }, \
> -		{ F_SETLKW64,		"SETLKW64" }, \
> -		{ F_SETOWN_EX,		"SETOWN_EX" }, \
> -		{ F_GETOWN_EX,		"GETOWN_EX" }, \
> -		{ F_GETOWNER_UIDS,	"GETOWNER_UIDS" }, \
> -		{ F_OFD_GETLK,		"OFD_GETLK" }, \
> -		{ F_OFD_SETLK,		"OFD_SETLK" }, \
> -		{ F_OFD_SETLKW,		"OFD_SETLKW" })
> -#endif /* CONFIG_64BIT */
> -
> -#define show_fs_fcntl_lock_type(x) \
> -	__print_symbolic(x, \
> -		{ F_RDLCK,		"RDLCK" }, \
> -		{ F_WRLCK,		"WRLCK" }, \
> -		{ F_UNLCK,		"UNLCK" })
> -
> -#define show_fs_lookup_flags(flags) \
> -	__print_flags(flags, "|", \
> -		{ LOOKUP_FOLLOW,	"FOLLOW" }, \
> -		{ LOOKUP_DIRECTORY,	"DIRECTORY" }, \
> -		{ LOOKUP_AUTOMOUNT,	"AUTOMOUNT" }, \
> -		{ LOOKUP_EMPTY,		"EMPTY" }, \
> -		{ LOOKUP_DOWN,		"DOWN" }, \
> -		{ LOOKUP_MOUNTPOINT,	"MOUNTPOINT" }, \
> -		{ LOOKUP_REVAL,		"REVAL" }, \
> -		{ LOOKUP_RCU,		"RCU" }, \
> -		{ LOOKUP_OPEN,		"OPEN" }, \
> -		{ LOOKUP_CREATE,	"CREATE" }, \
> -		{ LOOKUP_EXCL,		"EXCL" }, \
> -		{ LOOKUP_RENAME_TARGET,	"RENAME_TARGET" }, \
> -		{ LOOKUP_PARENT,	"PARENT" }, \
> -		{ LOOKUP_NO_SYMLINKS,	"NO_SYMLINKS" }, \
> -		{ LOOKUP_NO_MAGICLINKS,	"NO_MAGICLINKS" }, \
> -		{ LOOKUP_NO_XDEV,	"NO_XDEV" }, \
> -		{ LOOKUP_BENEATH,	"BENEATH" }, \
> -		{ LOOKUP_IN_ROOT,	"IN_ROOT" }, \
> -		{ LOOKUP_CACHED,	"CACHED" })
> diff --git a/include/trace/events/nfs.h b/include/trace/events/nfs.h
> deleted file mode 100644
> index 09ffdbb04134..000000000000
> --- a/include/trace/events/nfs.h
> +++ /dev/null
> @@ -1,375 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -/*
> - * Display helpers for NFS protocol elements
> - *
> - * Author: Chuck Lever <chuck.lever@xxxxxxxxxx>
> - *
> - * Copyright (c) 2020, Oracle and/or its affiliates.
> - */
> -
> -#include <linux/nfs.h>
> -#include <linux/nfs4.h>
> -#include <uapi/linux/nfs.h>
> -
> -TRACE_DEFINE_ENUM(NFS_OK);
> -TRACE_DEFINE_ENUM(NFSERR_PERM);
> -TRACE_DEFINE_ENUM(NFSERR_NOENT);
> -TRACE_DEFINE_ENUM(NFSERR_IO);
> -TRACE_DEFINE_ENUM(NFSERR_NXIO);
> -TRACE_DEFINE_ENUM(NFSERR_EAGAIN);
> -TRACE_DEFINE_ENUM(NFSERR_ACCES);
> -TRACE_DEFINE_ENUM(NFSERR_EXIST);
> -TRACE_DEFINE_ENUM(NFSERR_XDEV);
> -TRACE_DEFINE_ENUM(NFSERR_NODEV);
> -TRACE_DEFINE_ENUM(NFSERR_NOTDIR);
> -TRACE_DEFINE_ENUM(NFSERR_ISDIR);
> -TRACE_DEFINE_ENUM(NFSERR_INVAL);
> -TRACE_DEFINE_ENUM(NFSERR_FBIG);
> -TRACE_DEFINE_ENUM(NFSERR_NOSPC);
> -TRACE_DEFINE_ENUM(NFSERR_ROFS);
> -TRACE_DEFINE_ENUM(NFSERR_MLINK);
> -TRACE_DEFINE_ENUM(NFSERR_OPNOTSUPP);
> -TRACE_DEFINE_ENUM(NFSERR_NAMETOOLONG);
> -TRACE_DEFINE_ENUM(NFSERR_NOTEMPTY);
> -TRACE_DEFINE_ENUM(NFSERR_DQUOT);
> -TRACE_DEFINE_ENUM(NFSERR_STALE);
> -TRACE_DEFINE_ENUM(NFSERR_REMOTE);
> -TRACE_DEFINE_ENUM(NFSERR_WFLUSH);
> -TRACE_DEFINE_ENUM(NFSERR_BADHANDLE);
> -TRACE_DEFINE_ENUM(NFSERR_NOT_SYNC);
> -TRACE_DEFINE_ENUM(NFSERR_BAD_COOKIE);
> -TRACE_DEFINE_ENUM(NFSERR_NOTSUPP);
> -TRACE_DEFINE_ENUM(NFSERR_TOOSMALL);
> -TRACE_DEFINE_ENUM(NFSERR_SERVERFAULT);
> -TRACE_DEFINE_ENUM(NFSERR_BADTYPE);
> -TRACE_DEFINE_ENUM(NFSERR_JUKEBOX);
> -
> -#define show_nfs_status(x) \
> -	__print_symbolic(x, \
> -		{ NFS_OK,			"OK" }, \
> -		{ NFSERR_PERM,			"PERM" }, \
> -		{ NFSERR_NOENT,			"NOENT" }, \
> -		{ NFSERR_IO,			"IO" }, \
> -		{ NFSERR_NXIO,			"NXIO" }, \
> -		{ ECHILD,			"CHILD" }, \
> -		{ NFSERR_EAGAIN,		"AGAIN" }, \
> -		{ NFSERR_ACCES,			"ACCES" }, \
> -		{ NFSERR_EXIST,			"EXIST" }, \
> -		{ NFSERR_XDEV,			"XDEV" }, \
> -		{ NFSERR_NODEV,			"NODEV" }, \
> -		{ NFSERR_NOTDIR,		"NOTDIR" }, \
> -		{ NFSERR_ISDIR,			"ISDIR" }, \
> -		{ NFSERR_INVAL,			"INVAL" }, \
> -		{ NFSERR_FBIG,			"FBIG" }, \
> -		{ NFSERR_NOSPC,			"NOSPC" }, \
> -		{ NFSERR_ROFS,			"ROFS" }, \
> -		{ NFSERR_MLINK,			"MLINK" }, \
> -		{ NFSERR_OPNOTSUPP,		"OPNOTSUPP" }, \
> -		{ NFSERR_NAMETOOLONG,		"NAMETOOLONG" }, \
> -		{ NFSERR_NOTEMPTY,		"NOTEMPTY" }, \
> -		{ NFSERR_DQUOT,			"DQUOT" }, \
> -		{ NFSERR_STALE,			"STALE" }, \
> -		{ NFSERR_REMOTE,		"REMOTE" }, \
> -		{ NFSERR_WFLUSH,		"WFLUSH" }, \
> -		{ NFSERR_BADHANDLE,		"BADHANDLE" }, \
> -		{ NFSERR_NOT_SYNC,		"NOTSYNC" }, \
> -		{ NFSERR_BAD_COOKIE,		"BADCOOKIE" }, \
> -		{ NFSERR_NOTSUPP,		"NOTSUPP" }, \
> -		{ NFSERR_TOOSMALL,		"TOOSMALL" }, \
> -		{ NFSERR_SERVERFAULT,		"REMOTEIO" }, \
> -		{ NFSERR_BADTYPE,		"BADTYPE" }, \
> -		{ NFSERR_JUKEBOX,		"JUKEBOX" })
> -
> -TRACE_DEFINE_ENUM(NFS_UNSTABLE);
> -TRACE_DEFINE_ENUM(NFS_DATA_SYNC);
> -TRACE_DEFINE_ENUM(NFS_FILE_SYNC);
> -
> -#define show_nfs_stable_how(x) \
> -	__print_symbolic(x, \
> -		{ NFS_UNSTABLE,			"UNSTABLE" }, \
> -		{ NFS_DATA_SYNC,		"DATA_SYNC" }, \
> -		{ NFS_FILE_SYNC,		"FILE_SYNC" })
> -
> -TRACE_DEFINE_ENUM(NFS4_OK);
> -TRACE_DEFINE_ENUM(NFS4ERR_ACCESS);
> -TRACE_DEFINE_ENUM(NFS4ERR_ATTRNOTSUPP);
> -TRACE_DEFINE_ENUM(NFS4ERR_ADMIN_REVOKED);
> -TRACE_DEFINE_ENUM(NFS4ERR_BACK_CHAN_BUSY);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADCHAR);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADHANDLE);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADIOMODE);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADLAYOUT);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADLABEL);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADNAME);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADOWNER);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADSESSION);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADSLOT);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADTYPE);
> -TRACE_DEFINE_ENUM(NFS4ERR_BADXDR);
> -TRACE_DEFINE_ENUM(NFS4ERR_BAD_COOKIE);
> -TRACE_DEFINE_ENUM(NFS4ERR_BAD_HIGH_SLOT);
> -TRACE_DEFINE_ENUM(NFS4ERR_BAD_RANGE);
> -TRACE_DEFINE_ENUM(NFS4ERR_BAD_SEQID);
> -TRACE_DEFINE_ENUM(NFS4ERR_BAD_SESSION_DIGEST);
> -TRACE_DEFINE_ENUM(NFS4ERR_BAD_STATEID);
> -TRACE_DEFINE_ENUM(NFS4ERR_CB_PATH_DOWN);
> -TRACE_DEFINE_ENUM(NFS4ERR_CLID_INUSE);
> -TRACE_DEFINE_ENUM(NFS4ERR_CLIENTID_BUSY);
> -TRACE_DEFINE_ENUM(NFS4ERR_COMPLETE_ALREADY);
> -TRACE_DEFINE_ENUM(NFS4ERR_CONN_NOT_BOUND_TO_SESSION);
> -TRACE_DEFINE_ENUM(NFS4ERR_DEADLOCK);
> -TRACE_DEFINE_ENUM(NFS4ERR_DEADSESSION);
> -TRACE_DEFINE_ENUM(NFS4ERR_DELAY);
> -TRACE_DEFINE_ENUM(NFS4ERR_DELEG_ALREADY_WANTED);
> -TRACE_DEFINE_ENUM(NFS4ERR_DELEG_REVOKED);
> -TRACE_DEFINE_ENUM(NFS4ERR_DENIED);
> -TRACE_DEFINE_ENUM(NFS4ERR_DIRDELEG_UNAVAIL);
> -TRACE_DEFINE_ENUM(NFS4ERR_DQUOT);
> -TRACE_DEFINE_ENUM(NFS4ERR_ENCR_ALG_UNSUPP);
> -TRACE_DEFINE_ENUM(NFS4ERR_EXIST);
> -TRACE_DEFINE_ENUM(NFS4ERR_EXPIRED);
> -TRACE_DEFINE_ENUM(NFS4ERR_FBIG);
> -TRACE_DEFINE_ENUM(NFS4ERR_FHEXPIRED);
> -TRACE_DEFINE_ENUM(NFS4ERR_FILE_OPEN);
> -TRACE_DEFINE_ENUM(NFS4ERR_GRACE);
> -TRACE_DEFINE_ENUM(NFS4ERR_HASH_ALG_UNSUPP);
> -TRACE_DEFINE_ENUM(NFS4ERR_INVAL);
> -TRACE_DEFINE_ENUM(NFS4ERR_IO);
> -TRACE_DEFINE_ENUM(NFS4ERR_ISDIR);
> -TRACE_DEFINE_ENUM(NFS4ERR_LAYOUTTRYLATER);
> -TRACE_DEFINE_ENUM(NFS4ERR_LAYOUTUNAVAILABLE);
> -TRACE_DEFINE_ENUM(NFS4ERR_LEASE_MOVED);
> -TRACE_DEFINE_ENUM(NFS4ERR_LOCKED);
> -TRACE_DEFINE_ENUM(NFS4ERR_LOCKS_HELD);
> -TRACE_DEFINE_ENUM(NFS4ERR_LOCK_RANGE);
> -TRACE_DEFINE_ENUM(NFS4ERR_MINOR_VERS_MISMATCH);
> -TRACE_DEFINE_ENUM(NFS4ERR_MLINK);
> -TRACE_DEFINE_ENUM(NFS4ERR_MOVED);
> -TRACE_DEFINE_ENUM(NFS4ERR_NAMETOOLONG);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOENT);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOFILEHANDLE);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOMATCHING_LAYOUT);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOSPC);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOTDIR);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOTEMPTY);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOTSUPP);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOT_ONLY_OP);
> -TRACE_DEFINE_ENUM(NFS4ERR_NOT_SAME);
> -TRACE_DEFINE_ENUM(NFS4ERR_NO_GRACE);
> -TRACE_DEFINE_ENUM(NFS4ERR_NXIO);
> -TRACE_DEFINE_ENUM(NFS4ERR_OLD_STATEID);
> -TRACE_DEFINE_ENUM(NFS4ERR_OPENMODE);
> -TRACE_DEFINE_ENUM(NFS4ERR_OP_ILLEGAL);
> -TRACE_DEFINE_ENUM(NFS4ERR_OP_NOT_IN_SESSION);
> -TRACE_DEFINE_ENUM(NFS4ERR_PERM);
> -TRACE_DEFINE_ENUM(NFS4ERR_PNFS_IO_HOLE);
> -TRACE_DEFINE_ENUM(NFS4ERR_PNFS_NO_LAYOUT);
> -TRACE_DEFINE_ENUM(NFS4ERR_RECALLCONFLICT);
> -TRACE_DEFINE_ENUM(NFS4ERR_RECLAIM_BAD);
> -TRACE_DEFINE_ENUM(NFS4ERR_RECLAIM_CONFLICT);
> -TRACE_DEFINE_ENUM(NFS4ERR_REJECT_DELEG);
> -TRACE_DEFINE_ENUM(NFS4ERR_REP_TOO_BIG);
> -TRACE_DEFINE_ENUM(NFS4ERR_REP_TOO_BIG_TO_CACHE);
> -TRACE_DEFINE_ENUM(NFS4ERR_REQ_TOO_BIG);
> -TRACE_DEFINE_ENUM(NFS4ERR_RESOURCE);
> -TRACE_DEFINE_ENUM(NFS4ERR_RESTOREFH);
> -TRACE_DEFINE_ENUM(NFS4ERR_RETRY_UNCACHED_REP);
> -TRACE_DEFINE_ENUM(NFS4ERR_RETURNCONFLICT);
> -TRACE_DEFINE_ENUM(NFS4ERR_ROFS);
> -TRACE_DEFINE_ENUM(NFS4ERR_SAME);
> -TRACE_DEFINE_ENUM(NFS4ERR_SHARE_DENIED);
> -TRACE_DEFINE_ENUM(NFS4ERR_SEQUENCE_POS);
> -TRACE_DEFINE_ENUM(NFS4ERR_SEQ_FALSE_RETRY);
> -TRACE_DEFINE_ENUM(NFS4ERR_SEQ_MISORDERED);
> -TRACE_DEFINE_ENUM(NFS4ERR_SERVERFAULT);
> -TRACE_DEFINE_ENUM(NFS4ERR_STALE);
> -TRACE_DEFINE_ENUM(NFS4ERR_STALE_CLIENTID);
> -TRACE_DEFINE_ENUM(NFS4ERR_STALE_STATEID);
> -TRACE_DEFINE_ENUM(NFS4ERR_SYMLINK);
> -TRACE_DEFINE_ENUM(NFS4ERR_TOOSMALL);
> -TRACE_DEFINE_ENUM(NFS4ERR_TOO_MANY_OPS);
> -TRACE_DEFINE_ENUM(NFS4ERR_UNKNOWN_LAYOUTTYPE);
> -TRACE_DEFINE_ENUM(NFS4ERR_UNSAFE_COMPOUND);
> -TRACE_DEFINE_ENUM(NFS4ERR_WRONGSEC);
> -TRACE_DEFINE_ENUM(NFS4ERR_WRONG_CRED);
> -TRACE_DEFINE_ENUM(NFS4ERR_WRONG_TYPE);
> -TRACE_DEFINE_ENUM(NFS4ERR_XDEV);
> -
> -TRACE_DEFINE_ENUM(NFS4ERR_RESET_TO_MDS);
> -TRACE_DEFINE_ENUM(NFS4ERR_RESET_TO_PNFS);
> -
> -#define show_nfs4_status(x) \
> -	__print_symbolic(x, \
> -		{ NFS4_OK,			"OK" }, \
> -		{ EPERM,			"EPERM" }, \
> -		{ ENOENT,			"ENOENT" }, \
> -		{ EIO,				"EIO" }, \
> -		{ ENXIO,			"ENXIO" }, \
> -		{ EACCES,			"EACCES" }, \
> -		{ EEXIST,			"EEXIST" }, \
> -		{ EXDEV,			"EXDEV" }, \
> -		{ ENOTDIR,			"ENOTDIR" }, \
> -		{ EISDIR,			"EISDIR" }, \
> -		{ EFBIG,			"EFBIG" }, \
> -		{ ENOSPC,			"ENOSPC" }, \
> -		{ EROFS,			"EROFS" }, \
> -		{ EMLINK,			"EMLINK" }, \
> -		{ ENAMETOOLONG,			"ENAMETOOLONG" }, \
> -		{ ENOTEMPTY,			"ENOTEMPTY" }, \
> -		{ EDQUOT,			"EDQUOT" }, \
> -		{ ESTALE,			"ESTALE" }, \
> -		{ EBADHANDLE,			"EBADHANDLE" }, \
> -		{ EBADCOOKIE,			"EBADCOOKIE" }, \
> -		{ ENOTSUPP,			"ENOTSUPP" }, \
> -		{ ETOOSMALL,			"ETOOSMALL" }, \
> -		{ EREMOTEIO,			"EREMOTEIO" }, \
> -		{ EBADTYPE,			"EBADTYPE" }, \
> -		{ EAGAIN,			"EAGAIN" }, \
> -		{ ELOOP,			"ELOOP" }, \
> -		{ EOPNOTSUPP,			"EOPNOTSUPP" }, \
> -		{ EDEADLK,			"EDEADLK" }, \
> -		{ ENOMEM,			"ENOMEM" }, \
> -		{ EKEYEXPIRED,			"EKEYEXPIRED" }, \
> -		{ ETIMEDOUT,			"ETIMEDOUT" }, \
> -		{ ERESTARTSYS,			"ERESTARTSYS" }, \
> -		{ ECONNREFUSED,			"ECONNREFUSED" }, \
> -		{ ECONNRESET,			"ECONNRESET" }, \
> -		{ ENETUNREACH,			"ENETUNREACH" }, \
> -		{ EHOSTUNREACH,			"EHOSTUNREACH" }, \
> -		{ EHOSTDOWN,			"EHOSTDOWN" }, \
> -		{ EPIPE,			"EPIPE" }, \
> -		{ EPFNOSUPPORT,			"EPFNOSUPPORT" }, \
> -		{ EPROTONOSUPPORT,		"EPROTONOSUPPORT" }, \
> -		{ NFS4ERR_ACCESS,		"ACCESS" }, \
> -		{ NFS4ERR_ATTRNOTSUPP,		"ATTRNOTSUPP" }, \
> -		{ NFS4ERR_ADMIN_REVOKED,	"ADMIN_REVOKED" }, \
> -		{ NFS4ERR_BACK_CHAN_BUSY,	"BACK_CHAN_BUSY" }, \
> -		{ NFS4ERR_BADCHAR,		"BADCHAR" }, \
> -		{ NFS4ERR_BADHANDLE,		"BADHANDLE" }, \
> -		{ NFS4ERR_BADIOMODE,		"BADIOMODE" }, \
> -		{ NFS4ERR_BADLAYOUT,		"BADLAYOUT" }, \
> -		{ NFS4ERR_BADLABEL,		"BADLABEL" }, \
> -		{ NFS4ERR_BADNAME,		"BADNAME" }, \
> -		{ NFS4ERR_BADOWNER,		"BADOWNER" }, \
> -		{ NFS4ERR_BADSESSION,		"BADSESSION" }, \
> -		{ NFS4ERR_BADSLOT,		"BADSLOT" }, \
> -		{ NFS4ERR_BADTYPE,		"BADTYPE" }, \
> -		{ NFS4ERR_BADXDR,		"BADXDR" }, \
> -		{ NFS4ERR_BAD_COOKIE,		"BAD_COOKIE" }, \
> -		{ NFS4ERR_BAD_HIGH_SLOT,	"BAD_HIGH_SLOT" }, \
> -		{ NFS4ERR_BAD_RANGE,		"BAD_RANGE" }, \
> -		{ NFS4ERR_BAD_SEQID,		"BAD_SEQID" }, \
> -		{ NFS4ERR_BAD_SESSION_DIGEST,	"BAD_SESSION_DIGEST" }, \
> -		{ NFS4ERR_BAD_STATEID,		"BAD_STATEID" }, \
> -		{ NFS4ERR_CB_PATH_DOWN,		"CB_PATH_DOWN" }, \
> -		{ NFS4ERR_CLID_INUSE,		"CLID_INUSE" }, \
> -		{ NFS4ERR_CLIENTID_BUSY,	"CLIENTID_BUSY" }, \
> -		{ NFS4ERR_COMPLETE_ALREADY,	"COMPLETE_ALREADY" }, \
> -		{ NFS4ERR_CONN_NOT_BOUND_TO_SESSION, "CONN_NOT_BOUND_TO_SESSION" }, \
> -		{ NFS4ERR_DEADLOCK,		"DEADLOCK" }, \
> -		{ NFS4ERR_DEADSESSION,		"DEAD_SESSION" }, \
> -		{ NFS4ERR_DELAY,		"DELAY" }, \
> -		{ NFS4ERR_DELEG_ALREADY_WANTED,	"DELEG_ALREADY_WANTED" }, \
> -		{ NFS4ERR_DELEG_REVOKED,	"DELEG_REVOKED" }, \
> -		{ NFS4ERR_DENIED,		"DENIED" }, \
> -		{ NFS4ERR_DIRDELEG_UNAVAIL,	"DIRDELEG_UNAVAIL" }, \
> -		{ NFS4ERR_DQUOT,		"DQUOT" }, \
> -		{ NFS4ERR_ENCR_ALG_UNSUPP,	"ENCR_ALG_UNSUPP" }, \
> -		{ NFS4ERR_EXIST,		"EXIST" }, \
> -		{ NFS4ERR_EXPIRED,		"EXPIRED" }, \
> -		{ NFS4ERR_FBIG,			"FBIG" }, \
> -		{ NFS4ERR_FHEXPIRED,		"FHEXPIRED" }, \
> -		{ NFS4ERR_FILE_OPEN,		"FILE_OPEN" }, \
> -		{ NFS4ERR_GRACE,		"GRACE" }, \
> -		{ NFS4ERR_HASH_ALG_UNSUPP,	"HASH_ALG_UNSUPP" }, \
> -		{ NFS4ERR_INVAL,		"INVAL" }, \
> -		{ NFS4ERR_IO,			"IO" }, \
> -		{ NFS4ERR_ISDIR,		"ISDIR" }, \
> -		{ NFS4ERR_LAYOUTTRYLATER,	"LAYOUTTRYLATER" }, \
> -		{ NFS4ERR_LAYOUTUNAVAILABLE,	"LAYOUTUNAVAILABLE" }, \
> -		{ NFS4ERR_LEASE_MOVED,		"LEASE_MOVED" }, \
> -		{ NFS4ERR_LOCKED,		"LOCKED" }, \
> -		{ NFS4ERR_LOCKS_HELD,		"LOCKS_HELD" }, \
> -		{ NFS4ERR_LOCK_RANGE,		"LOCK_RANGE" }, \
> -		{ NFS4ERR_MINOR_VERS_MISMATCH,	"MINOR_VERS_MISMATCH" }, \
> -		{ NFS4ERR_MLINK,		"MLINK" }, \
> -		{ NFS4ERR_MOVED,		"MOVED" }, \
> -		{ NFS4ERR_NAMETOOLONG,		"NAMETOOLONG" }, \
> -		{ NFS4ERR_NOENT,		"NOENT" }, \
> -		{ NFS4ERR_NOFILEHANDLE,		"NOFILEHANDLE" }, \
> -		{ NFS4ERR_NOMATCHING_LAYOUT,	"NOMATCHING_LAYOUT" }, \
> -		{ NFS4ERR_NOSPC,		"NOSPC" }, \
> -		{ NFS4ERR_NOTDIR,		"NOTDIR" }, \
> -		{ NFS4ERR_NOTEMPTY,		"NOTEMPTY" }, \
> -		{ NFS4ERR_NOTSUPP,		"NOTSUPP" }, \
> -		{ NFS4ERR_NOT_ONLY_OP,		"NOT_ONLY_OP" }, \
> -		{ NFS4ERR_NOT_SAME,		"NOT_SAME" }, \
> -		{ NFS4ERR_NO_GRACE,		"NO_GRACE" }, \
> -		{ NFS4ERR_NXIO,			"NXIO" }, \
> -		{ NFS4ERR_OLD_STATEID,		"OLD_STATEID" }, \
> -		{ NFS4ERR_OPENMODE,		"OPENMODE" }, \
> -		{ NFS4ERR_OP_ILLEGAL,		"OP_ILLEGAL" }, \
> -		{ NFS4ERR_OP_NOT_IN_SESSION,	"OP_NOT_IN_SESSION" }, \
> -		{ NFS4ERR_PERM,			"PERM" }, \
> -		{ NFS4ERR_PNFS_IO_HOLE,		"PNFS_IO_HOLE" }, \
> -		{ NFS4ERR_PNFS_NO_LAYOUT,	"PNFS_NO_LAYOUT" }, \
> -		{ NFS4ERR_RECALLCONFLICT,	"RECALLCONFLICT" }, \
> -		{ NFS4ERR_RECLAIM_BAD,		"RECLAIM_BAD" }, \
> -		{ NFS4ERR_RECLAIM_CONFLICT,	"RECLAIM_CONFLICT" }, \
> -		{ NFS4ERR_REJECT_DELEG,		"REJECT_DELEG" }, \
> -		{ NFS4ERR_REP_TOO_BIG,		"REP_TOO_BIG" }, \
> -		{ NFS4ERR_REP_TOO_BIG_TO_CACHE,	"REP_TOO_BIG_TO_CACHE" }, \
> -		{ NFS4ERR_REQ_TOO_BIG,		"REQ_TOO_BIG" }, \
> -		{ NFS4ERR_RESOURCE,		"RESOURCE" }, \
> -		{ NFS4ERR_RESTOREFH,		"RESTOREFH" }, \
> -		{ NFS4ERR_RETRY_UNCACHED_REP,	"RETRY_UNCACHED_REP" }, \
> -		{ NFS4ERR_RETURNCONFLICT,	"RETURNCONFLICT" }, \
> -		{ NFS4ERR_ROFS,			"ROFS" }, \
> -		{ NFS4ERR_SAME,			"SAME" }, \
> -		{ NFS4ERR_SHARE_DENIED,		"SHARE_DENIED" }, \
> -		{ NFS4ERR_SEQUENCE_POS,		"SEQUENCE_POS" }, \
> -		{ NFS4ERR_SEQ_FALSE_RETRY,	"SEQ_FALSE_RETRY" }, \
> -		{ NFS4ERR_SEQ_MISORDERED,	"SEQ_MISORDERED" }, \
> -		{ NFS4ERR_SERVERFAULT,		"SERVERFAULT" }, \
> -		{ NFS4ERR_STALE,		"STALE" }, \
> -		{ NFS4ERR_STALE_CLIENTID,	"STALE_CLIENTID" }, \
> -		{ NFS4ERR_STALE_STATEID,	"STALE_STATEID" }, \
> -		{ NFS4ERR_SYMLINK,		"SYMLINK" }, \
> -		{ NFS4ERR_TOOSMALL,		"TOOSMALL" }, \
> -		{ NFS4ERR_TOO_MANY_OPS,		"TOO_MANY_OPS" }, \
> -		{ NFS4ERR_UNKNOWN_LAYOUTTYPE,	"UNKNOWN_LAYOUTTYPE" }, \
> -		{ NFS4ERR_UNSAFE_COMPOUND,	"UNSAFE_COMPOUND" }, \
> -		{ NFS4ERR_WRONGSEC,		"WRONGSEC" }, \
> -		{ NFS4ERR_WRONG_CRED,		"WRONG_CRED" }, \
> -		{ NFS4ERR_WRONG_TYPE,		"WRONG_TYPE" }, \
> -		{ NFS4ERR_XDEV,			"XDEV" }, \
> -		/* ***** Internal to Linux NFS client ***** */ \
> -		{ NFS4ERR_RESET_TO_MDS,		"RESET_TO_MDS" }, \
> -		{ NFS4ERR_RESET_TO_PNFS,	"RESET_TO_PNFS" })
> -
> -#define show_nfs4_verifier(x) \
> -	__print_hex_str(x, NFS4_VERIFIER_SIZE)
> -
> -TRACE_DEFINE_ENUM(IOMODE_READ);
> -TRACE_DEFINE_ENUM(IOMODE_RW);
> -TRACE_DEFINE_ENUM(IOMODE_ANY);
> -
> -#define show_pnfs_layout_iomode(x) \
> -	__print_symbolic(x, \
> -		{ IOMODE_READ,			"READ" }, \
> -		{ IOMODE_RW,			"RW" }, \
> -		{ IOMODE_ANY,			"ANY" })
> -
> -#define show_nfs4_seq4_status(x) \
> -	__print_flags(x, "|", \
> -		{ SEQ4_STATUS_CB_PATH_DOWN,		"CB_PATH_DOWN" }, \
> -		{ SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRING,	"CB_GSS_CONTEXTS_EXPIRING" }, \
> -		{ SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRED,	"CB_GSS_CONTEXTS_EXPIRED" }, \
> -		{ SEQ4_STATUS_EXPIRED_ALL_STATE_REVOKED, "EXPIRED_ALL_STATE_REVOKED" }, \
> -		{ SEQ4_STATUS_EXPIRED_SOME_STATE_REVOKED, "EXPIRED_SOME_STATE_REVOKED" }, \
> -		{ SEQ4_STATUS_ADMIN_STATE_REVOKED,	"ADMIN_STATE_REVOKED" }, \
> -		{ SEQ4_STATUS_RECALLABLE_STATE_REVOKED,	"RECALLABLE_STATE_REVOKED" }, \
> -		{ SEQ4_STATUS_LEASE_MOVED,		"LEASE_MOVED" }, \
> -		{ SEQ4_STATUS_RESTART_RECLAIM_NEEDED,	"RESTART_RECLAIM_NEEDED" }, \
> -		{ SEQ4_STATUS_CB_PATH_DOWN_SESSION,	"CB_PATH_DOWN_SESSION" }, \
> -		{ SEQ4_STATUS_BACKCHANNEL_FAULT,	"BACKCHANNEL_FAULT" })
> diff --git a/include/trace/events/rdma.h b/include/trace/events/rdma.h
> deleted file mode 100644
> index 81bb454fc288..000000000000
> --- a/include/trace/events/rdma.h
> +++ /dev/null
> @@ -1,168 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -/*
> - * Copyright (c) 2017 Oracle.  All rights reserved.
> - */
> -
> -/*
> - * enum ib_event_type, from include/rdma/ib_verbs.h
> - */
> -#define IB_EVENT_LIST				\
> -	ib_event(CQ_ERR)			\
> -	ib_event(QP_FATAL)			\
> -	ib_event(QP_REQ_ERR)			\
> -	ib_event(QP_ACCESS_ERR)			\
> -	ib_event(COMM_EST)			\
> -	ib_event(SQ_DRAINED)			\
> -	ib_event(PATH_MIG)			\
> -	ib_event(PATH_MIG_ERR)			\
> -	ib_event(DEVICE_FATAL)			\
> -	ib_event(PORT_ACTIVE)			\
> -	ib_event(PORT_ERR)			\
> -	ib_event(LID_CHANGE)			\
> -	ib_event(PKEY_CHANGE)			\
> -	ib_event(SM_CHANGE)			\
> -	ib_event(SRQ_ERR)			\
> -	ib_event(SRQ_LIMIT_REACHED)		\
> -	ib_event(QP_LAST_WQE_REACHED)		\
> -	ib_event(CLIENT_REREGISTER)		\
> -	ib_event(GID_CHANGE)			\
> -	ib_event_end(WQ_FATAL)
> -
> -#undef ib_event
> -#undef ib_event_end
> -
> -#define ib_event(x)		TRACE_DEFINE_ENUM(IB_EVENT_##x);
> -#define ib_event_end(x)		TRACE_DEFINE_ENUM(IB_EVENT_##x);
> -
> -IB_EVENT_LIST
> -
> -#undef ib_event
> -#undef ib_event_end
> -
> -#define ib_event(x)		{ IB_EVENT_##x, #x },
> -#define ib_event_end(x)		{ IB_EVENT_##x, #x }
> -
> -#define rdma_show_ib_event(x) \
> -		__print_symbolic(x, IB_EVENT_LIST)
> -
> -/*
> - * enum ib_wc_status type, from include/rdma/ib_verbs.h
> - */
> -#define IB_WC_STATUS_LIST			\
> -	ib_wc_status(SUCCESS)			\
> -	ib_wc_status(LOC_LEN_ERR)		\
> -	ib_wc_status(LOC_QP_OP_ERR)		\
> -	ib_wc_status(LOC_EEC_OP_ERR)		\
> -	ib_wc_status(LOC_PROT_ERR)		\
> -	ib_wc_status(WR_FLUSH_ERR)		\
> -	ib_wc_status(MW_BIND_ERR)		\
> -	ib_wc_status(BAD_RESP_ERR)		\
> -	ib_wc_status(LOC_ACCESS_ERR)		\
> -	ib_wc_status(REM_INV_REQ_ERR)		\
> -	ib_wc_status(REM_ACCESS_ERR)		\
> -	ib_wc_status(REM_OP_ERR)		\
> -	ib_wc_status(RETRY_EXC_ERR)		\
> -	ib_wc_status(RNR_RETRY_EXC_ERR)		\
> -	ib_wc_status(LOC_RDD_VIOL_ERR)		\
> -	ib_wc_status(REM_INV_RD_REQ_ERR)	\
> -	ib_wc_status(REM_ABORT_ERR)		\
> -	ib_wc_status(INV_EECN_ERR)		\
> -	ib_wc_status(INV_EEC_STATE_ERR)		\
> -	ib_wc_status(FATAL_ERR)			\
> -	ib_wc_status(RESP_TIMEOUT_ERR)		\
> -	ib_wc_status_end(GENERAL_ERR)
> -
> -#undef ib_wc_status
> -#undef ib_wc_status_end
> -
> -#define ib_wc_status(x)		TRACE_DEFINE_ENUM(IB_WC_##x);
> -#define ib_wc_status_end(x)	TRACE_DEFINE_ENUM(IB_WC_##x);
> -
> -IB_WC_STATUS_LIST
> -
> -#undef ib_wc_status
> -#undef ib_wc_status_end
> -
> -#define ib_wc_status(x)		{ IB_WC_##x, #x },
> -#define ib_wc_status_end(x)	{ IB_WC_##x, #x }
> -
> -#define rdma_show_wc_status(x) \
> -		__print_symbolic(x, IB_WC_STATUS_LIST)
> -
> -/*
> - * enum ib_cm_event_type, from include/rdma/ib_cm.h
> - */
> -#define IB_CM_EVENT_LIST			\
> -	ib_cm_event(REQ_ERROR)			\
> -	ib_cm_event(REQ_RECEIVED)		\
> -	ib_cm_event(REP_ERROR)			\
> -	ib_cm_event(REP_RECEIVED)		\
> -	ib_cm_event(RTU_RECEIVED)		\
> -	ib_cm_event(USER_ESTABLISHED)		\
> -	ib_cm_event(DREQ_ERROR)			\
> -	ib_cm_event(DREQ_RECEIVED)		\
> -	ib_cm_event(DREP_RECEIVED)		\
> -	ib_cm_event(TIMEWAIT_EXIT)		\
> -	ib_cm_event(MRA_RECEIVED)		\
> -	ib_cm_event(REJ_RECEIVED)		\
> -	ib_cm_event(LAP_ERROR)			\
> -	ib_cm_event(LAP_RECEIVED)		\
> -	ib_cm_event(APR_RECEIVED)		\
> -	ib_cm_event(SIDR_REQ_ERROR)		\
> -	ib_cm_event(SIDR_REQ_RECEIVED)		\
> -	ib_cm_event_end(SIDR_REP_RECEIVED)
> -
> -#undef ib_cm_event
> -#undef ib_cm_event_end
> -
> -#define ib_cm_event(x)		TRACE_DEFINE_ENUM(IB_CM_##x);
> -#define ib_cm_event_end(x)	TRACE_DEFINE_ENUM(IB_CM_##x);
> -
> -IB_CM_EVENT_LIST
> -
> -#undef ib_cm_event
> -#undef ib_cm_event_end
> -
> -#define ib_cm_event(x)		{ IB_CM_##x, #x },
> -#define ib_cm_event_end(x)	{ IB_CM_##x, #x }
> -
> -#define rdma_show_ib_cm_event(x) \
> -		__print_symbolic(x, IB_CM_EVENT_LIST)
> -
> -/*
> - * enum rdma_cm_event_type, from include/rdma/rdma_cm.h
> - */
> -#define RDMA_CM_EVENT_LIST			\
> -	rdma_cm_event(ADDR_RESOLVED)		\
> -	rdma_cm_event(ADDR_ERROR)		\
> -	rdma_cm_event(ROUTE_RESOLVED)		\
> -	rdma_cm_event(ROUTE_ERROR)		\
> -	rdma_cm_event(CONNECT_REQUEST)		\
> -	rdma_cm_event(CONNECT_RESPONSE)		\
> -	rdma_cm_event(CONNECT_ERROR)		\
> -	rdma_cm_event(UNREACHABLE)		\
> -	rdma_cm_event(REJECTED)			\
> -	rdma_cm_event(ESTABLISHED)		\
> -	rdma_cm_event(DISCONNECTED)		\
> -	rdma_cm_event(DEVICE_REMOVAL)		\
> -	rdma_cm_event(MULTICAST_JOIN)		\
> -	rdma_cm_event(MULTICAST_ERROR)		\
> -	rdma_cm_event(ADDR_CHANGE)		\
> -	rdma_cm_event_end(TIMEWAIT_EXIT)
> -
> -#undef rdma_cm_event
> -#undef rdma_cm_event_end
> -
> -#define rdma_cm_event(x)	TRACE_DEFINE_ENUM(RDMA_CM_EVENT_##x);
> -#define rdma_cm_event_end(x)	TRACE_DEFINE_ENUM(RDMA_CM_EVENT_##x);
> -
> -RDMA_CM_EVENT_LIST
> -
> -#undef rdma_cm_event
> -#undef rdma_cm_event_end
> -
> -#define rdma_cm_event(x)	{ RDMA_CM_EVENT_##x, #x },
> -#define rdma_cm_event_end(x)	{ RDMA_CM_EVENT_##x, #x }
> -
> -#define rdma_show_cm_event(x) \
> -		__print_symbolic(x, RDMA_CM_EVENT_LIST)
> diff --git a/include/trace/events/rpcgss.h b/include/trace/events/rpcgss.h
> index c9048f3e471b..3f121eed369e 100644
> --- a/include/trace/events/rpcgss.h
> +++ b/include/trace/events/rpcgss.h
> @@ -13,7 +13,7 @@
> 
> #include <linux/tracepoint.h>
> 
> -#include <trace/events/sunrpc_base.h>
> +#include <trace/misc/sunrpc.h>
> 
> /**
>  ** GSS-API related trace events
> diff --git a/include/trace/events/rpcrdma.h b/include/trace/events/rpcrdma.h
> index fcd3b3f1020a..8f461e04e5f0 100644
> --- a/include/trace/events/rpcrdma.h
> +++ b/include/trace/events/rpcrdma.h
> @@ -15,8 +15,8 @@
> #include <linux/tracepoint.h>
> #include <rdma/ib_cm.h>
> 
> -#include <trace/events/rdma.h>
> -#include <trace/events/sunrpc_base.h>
> +#include <trace/misc/rdma.h>
> +#include <trace/misc/sunrpc.h>
> 
> /**
>  ** Event classes
> diff --git a/include/trace/events/sunrpc.h b/include/trace/events/sunrpc.h
> index f48f2ab9d238..ffe2679a13ce 100644
> --- a/include/trace/events/sunrpc.h
> +++ b/include/trace/events/sunrpc.h
> @@ -14,7 +14,7 @@
> #include <linux/net.h>
> #include <linux/tracepoint.h>
> 
> -#include <trace/events/sunrpc_base.h>
> +#include <trace/misc/sunrpc.h>
> 
> TRACE_DEFINE_ENUM(SOCK_STREAM);
> TRACE_DEFINE_ENUM(SOCK_DGRAM);
> diff --git a/include/trace/events/sunrpc_base.h b/include/trace/events/sunrpc_base.h
> deleted file mode 100644
> index 588557d07ea8..000000000000
> --- a/include/trace/events/sunrpc_base.h
> +++ /dev/null
> @@ -1,18 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -/*
> - * Copyright (c) 2021 Oracle and/or its affiliates.
> - *
> - * Common types and format specifiers for sunrpc.
> - */
> -
> -#if !defined(_TRACE_SUNRPC_BASE_H)
> -#define _TRACE_SUNRPC_BASE_H
> -
> -#include <linux/tracepoint.h>
> -
> -#define SUNRPC_TRACE_PID_SPECIFIER	"%08x"
> -#define SUNRPC_TRACE_CLID_SPECIFIER	"%08x"
> -#define SUNRPC_TRACE_TASK_SPECIFIER \
> -	"task:" SUNRPC_TRACE_PID_SPECIFIER "@" SUNRPC_TRACE_CLID_SPECIFIER
> -
> -#endif /* _TRACE_SUNRPC_BASE_H */
> diff --git a/include/trace/misc/fs.h b/include/trace/misc/fs.h
> new file mode 100644
> index 000000000000..738b97f22f36
> --- /dev/null
> +++ b/include/trace/misc/fs.h
> @@ -0,0 +1,122 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Display helpers for generic filesystem items
> + *
> + * Author: Chuck Lever <chuck.lever@xxxxxxxxxx>
> + *
> + * Copyright (c) 2020, Oracle and/or its affiliates.
> + */
> +
> +#include <linux/fs.h>
> +
> +#define show_fs_dirent_type(x) \
> +	__print_symbolic(x, \
> +		{ DT_UNKNOWN,		"UNKNOWN" }, \
> +		{ DT_FIFO,		"FIFO" }, \
> +		{ DT_CHR,		"CHR" }, \
> +		{ DT_DIR,		"DIR" }, \
> +		{ DT_BLK,		"BLK" }, \
> +		{ DT_REG,		"REG" }, \
> +		{ DT_LNK,		"LNK" }, \
> +		{ DT_SOCK,		"SOCK" }, \
> +		{ DT_WHT,		"WHT" })
> +
> +#define show_fs_fcntl_open_flags(x) \
> +	__print_flags(x, "|", \
> +		{ O_WRONLY,		"O_WRONLY" }, \
> +		{ O_RDWR,		"O_RDWR" }, \
> +		{ O_CREAT,		"O_CREAT" }, \
> +		{ O_EXCL,		"O_EXCL" }, \
> +		{ O_NOCTTY,		"O_NOCTTY" }, \
> +		{ O_TRUNC,		"O_TRUNC" }, \
> +		{ O_APPEND,		"O_APPEND" }, \
> +		{ O_NONBLOCK,		"O_NONBLOCK" }, \
> +		{ O_DSYNC,		"O_DSYNC" }, \
> +		{ O_DIRECT,		"O_DIRECT" }, \
> +		{ O_LARGEFILE,		"O_LARGEFILE" }, \
> +		{ O_DIRECTORY,		"O_DIRECTORY" }, \
> +		{ O_NOFOLLOW,		"O_NOFOLLOW" }, \
> +		{ O_NOATIME,		"O_NOATIME" }, \
> +		{ O_CLOEXEC,		"O_CLOEXEC" })
> +
> +#define __fmode_flag(x)	{ (__force unsigned long)FMODE_##x, #x }
> +#define show_fs_fmode_flags(x) \
> +	__print_flags(x, "|", \
> +		__fmode_flag(READ), \
> +		__fmode_flag(WRITE), \
> +		__fmode_flag(EXEC))
> +
> +#ifdef CONFIG_64BIT
> +#define show_fs_fcntl_cmd(x) \
> +	__print_symbolic(x, \
> +		{ F_DUPFD,		"DUPFD" }, \
> +		{ F_GETFD,		"GETFD" }, \
> +		{ F_SETFD,		"SETFD" }, \
> +		{ F_GETFL,		"GETFL" }, \
> +		{ F_SETFL,		"SETFL" }, \
> +		{ F_GETLK,		"GETLK" }, \
> +		{ F_SETLK,		"SETLK" }, \
> +		{ F_SETLKW,		"SETLKW" }, \
> +		{ F_SETOWN,		"SETOWN" }, \
> +		{ F_GETOWN,		"GETOWN" }, \
> +		{ F_SETSIG,		"SETSIG" }, \
> +		{ F_GETSIG,		"GETSIG" }, \
> +		{ F_SETOWN_EX,		"SETOWN_EX" }, \
> +		{ F_GETOWN_EX,		"GETOWN_EX" }, \
> +		{ F_GETOWNER_UIDS,	"GETOWNER_UIDS" }, \
> +		{ F_OFD_GETLK,		"OFD_GETLK" }, \
> +		{ F_OFD_SETLK,		"OFD_SETLK" }, \
> +		{ F_OFD_SETLKW,		"OFD_SETLKW" })
> +#else /* CONFIG_64BIT */
> +#define show_fs_fcntl_cmd(x) \
> +	__print_symbolic(x, \
> +		{ F_DUPFD,		"DUPFD" }, \
> +		{ F_GETFD,		"GETFD" }, \
> +		{ F_SETFD,		"SETFD" }, \
> +		{ F_GETFL,		"GETFL" }, \
> +		{ F_SETFL,		"SETFL" }, \
> +		{ F_GETLK,		"GETLK" }, \
> +		{ F_SETLK,		"SETLK" }, \
> +		{ F_SETLKW,		"SETLKW" }, \
> +		{ F_SETOWN,		"SETOWN" }, \
> +		{ F_GETOWN,		"GETOWN" }, \
> +		{ F_SETSIG,		"SETSIG" }, \
> +		{ F_GETSIG,		"GETSIG" }, \
> +		{ F_GETLK64,		"GETLK64" }, \
> +		{ F_SETLK64,		"SETLK64" }, \
> +		{ F_SETLKW64,		"SETLKW64" }, \
> +		{ F_SETOWN_EX,		"SETOWN_EX" }, \
> +		{ F_GETOWN_EX,		"GETOWN_EX" }, \
> +		{ F_GETOWNER_UIDS,	"GETOWNER_UIDS" }, \
> +		{ F_OFD_GETLK,		"OFD_GETLK" }, \
> +		{ F_OFD_SETLK,		"OFD_SETLK" }, \
> +		{ F_OFD_SETLKW,		"OFD_SETLKW" })
> +#endif /* CONFIG_64BIT */
> +
> +#define show_fs_fcntl_lock_type(x) \
> +	__print_symbolic(x, \
> +		{ F_RDLCK,		"RDLCK" }, \
> +		{ F_WRLCK,		"WRLCK" }, \
> +		{ F_UNLCK,		"UNLCK" })
> +
> +#define show_fs_lookup_flags(flags) \
> +	__print_flags(flags, "|", \
> +		{ LOOKUP_FOLLOW,	"FOLLOW" }, \
> +		{ LOOKUP_DIRECTORY,	"DIRECTORY" }, \
> +		{ LOOKUP_AUTOMOUNT,	"AUTOMOUNT" }, \
> +		{ LOOKUP_EMPTY,		"EMPTY" }, \
> +		{ LOOKUP_DOWN,		"DOWN" }, \
> +		{ LOOKUP_MOUNTPOINT,	"MOUNTPOINT" }, \
> +		{ LOOKUP_REVAL,		"REVAL" }, \
> +		{ LOOKUP_RCU,		"RCU" }, \
> +		{ LOOKUP_OPEN,		"OPEN" }, \
> +		{ LOOKUP_CREATE,	"CREATE" }, \
> +		{ LOOKUP_EXCL,		"EXCL" }, \
> +		{ LOOKUP_RENAME_TARGET,	"RENAME_TARGET" }, \
> +		{ LOOKUP_PARENT,	"PARENT" }, \
> +		{ LOOKUP_NO_SYMLINKS,	"NO_SYMLINKS" }, \
> +		{ LOOKUP_NO_MAGICLINKS,	"NO_MAGICLINKS" }, \
> +		{ LOOKUP_NO_XDEV,	"NO_XDEV" }, \
> +		{ LOOKUP_BENEATH,	"BENEATH" }, \
> +		{ LOOKUP_IN_ROOT,	"IN_ROOT" }, \
> +		{ LOOKUP_CACHED,	"CACHED" })
> diff --git a/include/trace/misc/nfs.h b/include/trace/misc/nfs.h
> new file mode 100644
> index 000000000000..09ffdbb04134
> --- /dev/null
> +++ b/include/trace/misc/nfs.h
> @@ -0,0 +1,375 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Display helpers for NFS protocol elements
> + *
> + * Author: Chuck Lever <chuck.lever@xxxxxxxxxx>
> + *
> + * Copyright (c) 2020, Oracle and/or its affiliates.
> + */
> +
> +#include <linux/nfs.h>
> +#include <linux/nfs4.h>
> +#include <uapi/linux/nfs.h>
> +
> +TRACE_DEFINE_ENUM(NFS_OK);
> +TRACE_DEFINE_ENUM(NFSERR_PERM);
> +TRACE_DEFINE_ENUM(NFSERR_NOENT);
> +TRACE_DEFINE_ENUM(NFSERR_IO);
> +TRACE_DEFINE_ENUM(NFSERR_NXIO);
> +TRACE_DEFINE_ENUM(NFSERR_EAGAIN);
> +TRACE_DEFINE_ENUM(NFSERR_ACCES);
> +TRACE_DEFINE_ENUM(NFSERR_EXIST);
> +TRACE_DEFINE_ENUM(NFSERR_XDEV);
> +TRACE_DEFINE_ENUM(NFSERR_NODEV);
> +TRACE_DEFINE_ENUM(NFSERR_NOTDIR);
> +TRACE_DEFINE_ENUM(NFSERR_ISDIR);
> +TRACE_DEFINE_ENUM(NFSERR_INVAL);
> +TRACE_DEFINE_ENUM(NFSERR_FBIG);
> +TRACE_DEFINE_ENUM(NFSERR_NOSPC);
> +TRACE_DEFINE_ENUM(NFSERR_ROFS);
> +TRACE_DEFINE_ENUM(NFSERR_MLINK);
> +TRACE_DEFINE_ENUM(NFSERR_OPNOTSUPP);
> +TRACE_DEFINE_ENUM(NFSERR_NAMETOOLONG);
> +TRACE_DEFINE_ENUM(NFSERR_NOTEMPTY);
> +TRACE_DEFINE_ENUM(NFSERR_DQUOT);
> +TRACE_DEFINE_ENUM(NFSERR_STALE);
> +TRACE_DEFINE_ENUM(NFSERR_REMOTE);
> +TRACE_DEFINE_ENUM(NFSERR_WFLUSH);
> +TRACE_DEFINE_ENUM(NFSERR_BADHANDLE);
> +TRACE_DEFINE_ENUM(NFSERR_NOT_SYNC);
> +TRACE_DEFINE_ENUM(NFSERR_BAD_COOKIE);
> +TRACE_DEFINE_ENUM(NFSERR_NOTSUPP);
> +TRACE_DEFINE_ENUM(NFSERR_TOOSMALL);
> +TRACE_DEFINE_ENUM(NFSERR_SERVERFAULT);
> +TRACE_DEFINE_ENUM(NFSERR_BADTYPE);
> +TRACE_DEFINE_ENUM(NFSERR_JUKEBOX);
> +
> +#define show_nfs_status(x) \
> +	__print_symbolic(x, \
> +		{ NFS_OK,			"OK" }, \
> +		{ NFSERR_PERM,			"PERM" }, \
> +		{ NFSERR_NOENT,			"NOENT" }, \
> +		{ NFSERR_IO,			"IO" }, \
> +		{ NFSERR_NXIO,			"NXIO" }, \
> +		{ ECHILD,			"CHILD" }, \
> +		{ NFSERR_EAGAIN,		"AGAIN" }, \
> +		{ NFSERR_ACCES,			"ACCES" }, \
> +		{ NFSERR_EXIST,			"EXIST" }, \
> +		{ NFSERR_XDEV,			"XDEV" }, \
> +		{ NFSERR_NODEV,			"NODEV" }, \
> +		{ NFSERR_NOTDIR,		"NOTDIR" }, \
> +		{ NFSERR_ISDIR,			"ISDIR" }, \
> +		{ NFSERR_INVAL,			"INVAL" }, \
> +		{ NFSERR_FBIG,			"FBIG" }, \
> +		{ NFSERR_NOSPC,			"NOSPC" }, \
> +		{ NFSERR_ROFS,			"ROFS" }, \
> +		{ NFSERR_MLINK,			"MLINK" }, \
> +		{ NFSERR_OPNOTSUPP,		"OPNOTSUPP" }, \
> +		{ NFSERR_NAMETOOLONG,		"NAMETOOLONG" }, \
> +		{ NFSERR_NOTEMPTY,		"NOTEMPTY" }, \
> +		{ NFSERR_DQUOT,			"DQUOT" }, \
> +		{ NFSERR_STALE,			"STALE" }, \
> +		{ NFSERR_REMOTE,		"REMOTE" }, \
> +		{ NFSERR_WFLUSH,		"WFLUSH" }, \
> +		{ NFSERR_BADHANDLE,		"BADHANDLE" }, \
> +		{ NFSERR_NOT_SYNC,		"NOTSYNC" }, \
> +		{ NFSERR_BAD_COOKIE,		"BADCOOKIE" }, \
> +		{ NFSERR_NOTSUPP,		"NOTSUPP" }, \
> +		{ NFSERR_TOOSMALL,		"TOOSMALL" }, \
> +		{ NFSERR_SERVERFAULT,		"REMOTEIO" }, \
> +		{ NFSERR_BADTYPE,		"BADTYPE" }, \
> +		{ NFSERR_JUKEBOX,		"JUKEBOX" })
> +
> +TRACE_DEFINE_ENUM(NFS_UNSTABLE);
> +TRACE_DEFINE_ENUM(NFS_DATA_SYNC);
> +TRACE_DEFINE_ENUM(NFS_FILE_SYNC);
> +
> +#define show_nfs_stable_how(x) \
> +	__print_symbolic(x, \
> +		{ NFS_UNSTABLE,			"UNSTABLE" }, \
> +		{ NFS_DATA_SYNC,		"DATA_SYNC" }, \
> +		{ NFS_FILE_SYNC,		"FILE_SYNC" })
> +
> +TRACE_DEFINE_ENUM(NFS4_OK);
> +TRACE_DEFINE_ENUM(NFS4ERR_ACCESS);
> +TRACE_DEFINE_ENUM(NFS4ERR_ATTRNOTSUPP);
> +TRACE_DEFINE_ENUM(NFS4ERR_ADMIN_REVOKED);
> +TRACE_DEFINE_ENUM(NFS4ERR_BACK_CHAN_BUSY);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADCHAR);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADHANDLE);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADIOMODE);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADLAYOUT);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADLABEL);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADNAME);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADOWNER);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADSESSION);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADSLOT);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADTYPE);
> +TRACE_DEFINE_ENUM(NFS4ERR_BADXDR);
> +TRACE_DEFINE_ENUM(NFS4ERR_BAD_COOKIE);
> +TRACE_DEFINE_ENUM(NFS4ERR_BAD_HIGH_SLOT);
> +TRACE_DEFINE_ENUM(NFS4ERR_BAD_RANGE);
> +TRACE_DEFINE_ENUM(NFS4ERR_BAD_SEQID);
> +TRACE_DEFINE_ENUM(NFS4ERR_BAD_SESSION_DIGEST);
> +TRACE_DEFINE_ENUM(NFS4ERR_BAD_STATEID);
> +TRACE_DEFINE_ENUM(NFS4ERR_CB_PATH_DOWN);
> +TRACE_DEFINE_ENUM(NFS4ERR_CLID_INUSE);
> +TRACE_DEFINE_ENUM(NFS4ERR_CLIENTID_BUSY);
> +TRACE_DEFINE_ENUM(NFS4ERR_COMPLETE_ALREADY);
> +TRACE_DEFINE_ENUM(NFS4ERR_CONN_NOT_BOUND_TO_SESSION);
> +TRACE_DEFINE_ENUM(NFS4ERR_DEADLOCK);
> +TRACE_DEFINE_ENUM(NFS4ERR_DEADSESSION);
> +TRACE_DEFINE_ENUM(NFS4ERR_DELAY);
> +TRACE_DEFINE_ENUM(NFS4ERR_DELEG_ALREADY_WANTED);
> +TRACE_DEFINE_ENUM(NFS4ERR_DELEG_REVOKED);
> +TRACE_DEFINE_ENUM(NFS4ERR_DENIED);
> +TRACE_DEFINE_ENUM(NFS4ERR_DIRDELEG_UNAVAIL);
> +TRACE_DEFINE_ENUM(NFS4ERR_DQUOT);
> +TRACE_DEFINE_ENUM(NFS4ERR_ENCR_ALG_UNSUPP);
> +TRACE_DEFINE_ENUM(NFS4ERR_EXIST);
> +TRACE_DEFINE_ENUM(NFS4ERR_EXPIRED);
> +TRACE_DEFINE_ENUM(NFS4ERR_FBIG);
> +TRACE_DEFINE_ENUM(NFS4ERR_FHEXPIRED);
> +TRACE_DEFINE_ENUM(NFS4ERR_FILE_OPEN);
> +TRACE_DEFINE_ENUM(NFS4ERR_GRACE);
> +TRACE_DEFINE_ENUM(NFS4ERR_HASH_ALG_UNSUPP);
> +TRACE_DEFINE_ENUM(NFS4ERR_INVAL);
> +TRACE_DEFINE_ENUM(NFS4ERR_IO);
> +TRACE_DEFINE_ENUM(NFS4ERR_ISDIR);
> +TRACE_DEFINE_ENUM(NFS4ERR_LAYOUTTRYLATER);
> +TRACE_DEFINE_ENUM(NFS4ERR_LAYOUTUNAVAILABLE);
> +TRACE_DEFINE_ENUM(NFS4ERR_LEASE_MOVED);
> +TRACE_DEFINE_ENUM(NFS4ERR_LOCKED);
> +TRACE_DEFINE_ENUM(NFS4ERR_LOCKS_HELD);
> +TRACE_DEFINE_ENUM(NFS4ERR_LOCK_RANGE);
> +TRACE_DEFINE_ENUM(NFS4ERR_MINOR_VERS_MISMATCH);
> +TRACE_DEFINE_ENUM(NFS4ERR_MLINK);
> +TRACE_DEFINE_ENUM(NFS4ERR_MOVED);
> +TRACE_DEFINE_ENUM(NFS4ERR_NAMETOOLONG);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOENT);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOFILEHANDLE);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOMATCHING_LAYOUT);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOSPC);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOTDIR);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOTEMPTY);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOTSUPP);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOT_ONLY_OP);
> +TRACE_DEFINE_ENUM(NFS4ERR_NOT_SAME);
> +TRACE_DEFINE_ENUM(NFS4ERR_NO_GRACE);
> +TRACE_DEFINE_ENUM(NFS4ERR_NXIO);
> +TRACE_DEFINE_ENUM(NFS4ERR_OLD_STATEID);
> +TRACE_DEFINE_ENUM(NFS4ERR_OPENMODE);
> +TRACE_DEFINE_ENUM(NFS4ERR_OP_ILLEGAL);
> +TRACE_DEFINE_ENUM(NFS4ERR_OP_NOT_IN_SESSION);
> +TRACE_DEFINE_ENUM(NFS4ERR_PERM);
> +TRACE_DEFINE_ENUM(NFS4ERR_PNFS_IO_HOLE);
> +TRACE_DEFINE_ENUM(NFS4ERR_PNFS_NO_LAYOUT);
> +TRACE_DEFINE_ENUM(NFS4ERR_RECALLCONFLICT);
> +TRACE_DEFINE_ENUM(NFS4ERR_RECLAIM_BAD);
> +TRACE_DEFINE_ENUM(NFS4ERR_RECLAIM_CONFLICT);
> +TRACE_DEFINE_ENUM(NFS4ERR_REJECT_DELEG);
> +TRACE_DEFINE_ENUM(NFS4ERR_REP_TOO_BIG);
> +TRACE_DEFINE_ENUM(NFS4ERR_REP_TOO_BIG_TO_CACHE);
> +TRACE_DEFINE_ENUM(NFS4ERR_REQ_TOO_BIG);
> +TRACE_DEFINE_ENUM(NFS4ERR_RESOURCE);
> +TRACE_DEFINE_ENUM(NFS4ERR_RESTOREFH);
> +TRACE_DEFINE_ENUM(NFS4ERR_RETRY_UNCACHED_REP);
> +TRACE_DEFINE_ENUM(NFS4ERR_RETURNCONFLICT);
> +TRACE_DEFINE_ENUM(NFS4ERR_ROFS);
> +TRACE_DEFINE_ENUM(NFS4ERR_SAME);
> +TRACE_DEFINE_ENUM(NFS4ERR_SHARE_DENIED);
> +TRACE_DEFINE_ENUM(NFS4ERR_SEQUENCE_POS);
> +TRACE_DEFINE_ENUM(NFS4ERR_SEQ_FALSE_RETRY);
> +TRACE_DEFINE_ENUM(NFS4ERR_SEQ_MISORDERED);
> +TRACE_DEFINE_ENUM(NFS4ERR_SERVERFAULT);
> +TRACE_DEFINE_ENUM(NFS4ERR_STALE);
> +TRACE_DEFINE_ENUM(NFS4ERR_STALE_CLIENTID);
> +TRACE_DEFINE_ENUM(NFS4ERR_STALE_STATEID);
> +TRACE_DEFINE_ENUM(NFS4ERR_SYMLINK);
> +TRACE_DEFINE_ENUM(NFS4ERR_TOOSMALL);
> +TRACE_DEFINE_ENUM(NFS4ERR_TOO_MANY_OPS);
> +TRACE_DEFINE_ENUM(NFS4ERR_UNKNOWN_LAYOUTTYPE);
> +TRACE_DEFINE_ENUM(NFS4ERR_UNSAFE_COMPOUND);
> +TRACE_DEFINE_ENUM(NFS4ERR_WRONGSEC);
> +TRACE_DEFINE_ENUM(NFS4ERR_WRONG_CRED);
> +TRACE_DEFINE_ENUM(NFS4ERR_WRONG_TYPE);
> +TRACE_DEFINE_ENUM(NFS4ERR_XDEV);
> +
> +TRACE_DEFINE_ENUM(NFS4ERR_RESET_TO_MDS);
> +TRACE_DEFINE_ENUM(NFS4ERR_RESET_TO_PNFS);
> +
> +#define show_nfs4_status(x) \
> +	__print_symbolic(x, \
> +		{ NFS4_OK,			"OK" }, \
> +		{ EPERM,			"EPERM" }, \
> +		{ ENOENT,			"ENOENT" }, \
> +		{ EIO,				"EIO" }, \
> +		{ ENXIO,			"ENXIO" }, \
> +		{ EACCES,			"EACCES" }, \
> +		{ EEXIST,			"EEXIST" }, \
> +		{ EXDEV,			"EXDEV" }, \
> +		{ ENOTDIR,			"ENOTDIR" }, \
> +		{ EISDIR,			"EISDIR" }, \
> +		{ EFBIG,			"EFBIG" }, \
> +		{ ENOSPC,			"ENOSPC" }, \
> +		{ EROFS,			"EROFS" }, \
> +		{ EMLINK,			"EMLINK" }, \
> +		{ ENAMETOOLONG,			"ENAMETOOLONG" }, \
> +		{ ENOTEMPTY,			"ENOTEMPTY" }, \
> +		{ EDQUOT,			"EDQUOT" }, \
> +		{ ESTALE,			"ESTALE" }, \
> +		{ EBADHANDLE,			"EBADHANDLE" }, \
> +		{ EBADCOOKIE,			"EBADCOOKIE" }, \
> +		{ ENOTSUPP,			"ENOTSUPP" }, \
> +		{ ETOOSMALL,			"ETOOSMALL" }, \
> +		{ EREMOTEIO,			"EREMOTEIO" }, \
> +		{ EBADTYPE,			"EBADTYPE" }, \
> +		{ EAGAIN,			"EAGAIN" }, \
> +		{ ELOOP,			"ELOOP" }, \
> +		{ EOPNOTSUPP,			"EOPNOTSUPP" }, \
> +		{ EDEADLK,			"EDEADLK" }, \
> +		{ ENOMEM,			"ENOMEM" }, \
> +		{ EKEYEXPIRED,			"EKEYEXPIRED" }, \
> +		{ ETIMEDOUT,			"ETIMEDOUT" }, \
> +		{ ERESTARTSYS,			"ERESTARTSYS" }, \
> +		{ ECONNREFUSED,			"ECONNREFUSED" }, \
> +		{ ECONNRESET,			"ECONNRESET" }, \
> +		{ ENETUNREACH,			"ENETUNREACH" }, \
> +		{ EHOSTUNREACH,			"EHOSTUNREACH" }, \
> +		{ EHOSTDOWN,			"EHOSTDOWN" }, \
> +		{ EPIPE,			"EPIPE" }, \
> +		{ EPFNOSUPPORT,			"EPFNOSUPPORT" }, \
> +		{ EPROTONOSUPPORT,		"EPROTONOSUPPORT" }, \
> +		{ NFS4ERR_ACCESS,		"ACCESS" }, \
> +		{ NFS4ERR_ATTRNOTSUPP,		"ATTRNOTSUPP" }, \
> +		{ NFS4ERR_ADMIN_REVOKED,	"ADMIN_REVOKED" }, \
> +		{ NFS4ERR_BACK_CHAN_BUSY,	"BACK_CHAN_BUSY" }, \
> +		{ NFS4ERR_BADCHAR,		"BADCHAR" }, \
> +		{ NFS4ERR_BADHANDLE,		"BADHANDLE" }, \
> +		{ NFS4ERR_BADIOMODE,		"BADIOMODE" }, \
> +		{ NFS4ERR_BADLAYOUT,		"BADLAYOUT" }, \
> +		{ NFS4ERR_BADLABEL,		"BADLABEL" }, \
> +		{ NFS4ERR_BADNAME,		"BADNAME" }, \
> +		{ NFS4ERR_BADOWNER,		"BADOWNER" }, \
> +		{ NFS4ERR_BADSESSION,		"BADSESSION" }, \
> +		{ NFS4ERR_BADSLOT,		"BADSLOT" }, \
> +		{ NFS4ERR_BADTYPE,		"BADTYPE" }, \
> +		{ NFS4ERR_BADXDR,		"BADXDR" }, \
> +		{ NFS4ERR_BAD_COOKIE,		"BAD_COOKIE" }, \
> +		{ NFS4ERR_BAD_HIGH_SLOT,	"BAD_HIGH_SLOT" }, \
> +		{ NFS4ERR_BAD_RANGE,		"BAD_RANGE" }, \
> +		{ NFS4ERR_BAD_SEQID,		"BAD_SEQID" }, \
> +		{ NFS4ERR_BAD_SESSION_DIGEST,	"BAD_SESSION_DIGEST" }, \
> +		{ NFS4ERR_BAD_STATEID,		"BAD_STATEID" }, \
> +		{ NFS4ERR_CB_PATH_DOWN,		"CB_PATH_DOWN" }, \
> +		{ NFS4ERR_CLID_INUSE,		"CLID_INUSE" }, \
> +		{ NFS4ERR_CLIENTID_BUSY,	"CLIENTID_BUSY" }, \
> +		{ NFS4ERR_COMPLETE_ALREADY,	"COMPLETE_ALREADY" }, \
> +		{ NFS4ERR_CONN_NOT_BOUND_TO_SESSION, "CONN_NOT_BOUND_TO_SESSION" }, \
> +		{ NFS4ERR_DEADLOCK,		"DEADLOCK" }, \
> +		{ NFS4ERR_DEADSESSION,		"DEAD_SESSION" }, \
> +		{ NFS4ERR_DELAY,		"DELAY" }, \
> +		{ NFS4ERR_DELEG_ALREADY_WANTED,	"DELEG_ALREADY_WANTED" }, \
> +		{ NFS4ERR_DELEG_REVOKED,	"DELEG_REVOKED" }, \
> +		{ NFS4ERR_DENIED,		"DENIED" }, \
> +		{ NFS4ERR_DIRDELEG_UNAVAIL,	"DIRDELEG_UNAVAIL" }, \
> +		{ NFS4ERR_DQUOT,		"DQUOT" }, \
> +		{ NFS4ERR_ENCR_ALG_UNSUPP,	"ENCR_ALG_UNSUPP" }, \
> +		{ NFS4ERR_EXIST,		"EXIST" }, \
> +		{ NFS4ERR_EXPIRED,		"EXPIRED" }, \
> +		{ NFS4ERR_FBIG,			"FBIG" }, \
> +		{ NFS4ERR_FHEXPIRED,		"FHEXPIRED" }, \
> +		{ NFS4ERR_FILE_OPEN,		"FILE_OPEN" }, \
> +		{ NFS4ERR_GRACE,		"GRACE" }, \
> +		{ NFS4ERR_HASH_ALG_UNSUPP,	"HASH_ALG_UNSUPP" }, \
> +		{ NFS4ERR_INVAL,		"INVAL" }, \
> +		{ NFS4ERR_IO,			"IO" }, \
> +		{ NFS4ERR_ISDIR,		"ISDIR" }, \
> +		{ NFS4ERR_LAYOUTTRYLATER,	"LAYOUTTRYLATER" }, \
> +		{ NFS4ERR_LAYOUTUNAVAILABLE,	"LAYOUTUNAVAILABLE" }, \
> +		{ NFS4ERR_LEASE_MOVED,		"LEASE_MOVED" }, \
> +		{ NFS4ERR_LOCKED,		"LOCKED" }, \
> +		{ NFS4ERR_LOCKS_HELD,		"LOCKS_HELD" }, \
> +		{ NFS4ERR_LOCK_RANGE,		"LOCK_RANGE" }, \
> +		{ NFS4ERR_MINOR_VERS_MISMATCH,	"MINOR_VERS_MISMATCH" }, \
> +		{ NFS4ERR_MLINK,		"MLINK" }, \
> +		{ NFS4ERR_MOVED,		"MOVED" }, \
> +		{ NFS4ERR_NAMETOOLONG,		"NAMETOOLONG" }, \
> +		{ NFS4ERR_NOENT,		"NOENT" }, \
> +		{ NFS4ERR_NOFILEHANDLE,		"NOFILEHANDLE" }, \
> +		{ NFS4ERR_NOMATCHING_LAYOUT,	"NOMATCHING_LAYOUT" }, \
> +		{ NFS4ERR_NOSPC,		"NOSPC" }, \
> +		{ NFS4ERR_NOTDIR,		"NOTDIR" }, \
> +		{ NFS4ERR_NOTEMPTY,		"NOTEMPTY" }, \
> +		{ NFS4ERR_NOTSUPP,		"NOTSUPP" }, \
> +		{ NFS4ERR_NOT_ONLY_OP,		"NOT_ONLY_OP" }, \
> +		{ NFS4ERR_NOT_SAME,		"NOT_SAME" }, \
> +		{ NFS4ERR_NO_GRACE,		"NO_GRACE" }, \
> +		{ NFS4ERR_NXIO,			"NXIO" }, \
> +		{ NFS4ERR_OLD_STATEID,		"OLD_STATEID" }, \
> +		{ NFS4ERR_OPENMODE,		"OPENMODE" }, \
> +		{ NFS4ERR_OP_ILLEGAL,		"OP_ILLEGAL" }, \
> +		{ NFS4ERR_OP_NOT_IN_SESSION,	"OP_NOT_IN_SESSION" }, \
> +		{ NFS4ERR_PERM,			"PERM" }, \
> +		{ NFS4ERR_PNFS_IO_HOLE,		"PNFS_IO_HOLE" }, \
> +		{ NFS4ERR_PNFS_NO_LAYOUT,	"PNFS_NO_LAYOUT" }, \
> +		{ NFS4ERR_RECALLCONFLICT,	"RECALLCONFLICT" }, \
> +		{ NFS4ERR_RECLAIM_BAD,		"RECLAIM_BAD" }, \
> +		{ NFS4ERR_RECLAIM_CONFLICT,	"RECLAIM_CONFLICT" }, \
> +		{ NFS4ERR_REJECT_DELEG,		"REJECT_DELEG" }, \
> +		{ NFS4ERR_REP_TOO_BIG,		"REP_TOO_BIG" }, \
> +		{ NFS4ERR_REP_TOO_BIG_TO_CACHE,	"REP_TOO_BIG_TO_CACHE" }, \
> +		{ NFS4ERR_REQ_TOO_BIG,		"REQ_TOO_BIG" }, \
> +		{ NFS4ERR_RESOURCE,		"RESOURCE" }, \
> +		{ NFS4ERR_RESTOREFH,		"RESTOREFH" }, \
> +		{ NFS4ERR_RETRY_UNCACHED_REP,	"RETRY_UNCACHED_REP" }, \
> +		{ NFS4ERR_RETURNCONFLICT,	"RETURNCONFLICT" }, \
> +		{ NFS4ERR_ROFS,			"ROFS" }, \
> +		{ NFS4ERR_SAME,			"SAME" }, \
> +		{ NFS4ERR_SHARE_DENIED,		"SHARE_DENIED" }, \
> +		{ NFS4ERR_SEQUENCE_POS,		"SEQUENCE_POS" }, \
> +		{ NFS4ERR_SEQ_FALSE_RETRY,	"SEQ_FALSE_RETRY" }, \
> +		{ NFS4ERR_SEQ_MISORDERED,	"SEQ_MISORDERED" }, \
> +		{ NFS4ERR_SERVERFAULT,		"SERVERFAULT" }, \
> +		{ NFS4ERR_STALE,		"STALE" }, \
> +		{ NFS4ERR_STALE_CLIENTID,	"STALE_CLIENTID" }, \
> +		{ NFS4ERR_STALE_STATEID,	"STALE_STATEID" }, \
> +		{ NFS4ERR_SYMLINK,		"SYMLINK" }, \
> +		{ NFS4ERR_TOOSMALL,		"TOOSMALL" }, \
> +		{ NFS4ERR_TOO_MANY_OPS,		"TOO_MANY_OPS" }, \
> +		{ NFS4ERR_UNKNOWN_LAYOUTTYPE,	"UNKNOWN_LAYOUTTYPE" }, \
> +		{ NFS4ERR_UNSAFE_COMPOUND,	"UNSAFE_COMPOUND" }, \
> +		{ NFS4ERR_WRONGSEC,		"WRONGSEC" }, \
> +		{ NFS4ERR_WRONG_CRED,		"WRONG_CRED" }, \
> +		{ NFS4ERR_WRONG_TYPE,		"WRONG_TYPE" }, \
> +		{ NFS4ERR_XDEV,			"XDEV" }, \
> +		/* ***** Internal to Linux NFS client ***** */ \
> +		{ NFS4ERR_RESET_TO_MDS,		"RESET_TO_MDS" }, \
> +		{ NFS4ERR_RESET_TO_PNFS,	"RESET_TO_PNFS" })
> +
> +#define show_nfs4_verifier(x) \
> +	__print_hex_str(x, NFS4_VERIFIER_SIZE)
> +
> +TRACE_DEFINE_ENUM(IOMODE_READ);
> +TRACE_DEFINE_ENUM(IOMODE_RW);
> +TRACE_DEFINE_ENUM(IOMODE_ANY);
> +
> +#define show_pnfs_layout_iomode(x) \
> +	__print_symbolic(x, \
> +		{ IOMODE_READ,			"READ" }, \
> +		{ IOMODE_RW,			"RW" }, \
> +		{ IOMODE_ANY,			"ANY" })
> +
> +#define show_nfs4_seq4_status(x) \
> +	__print_flags(x, "|", \
> +		{ SEQ4_STATUS_CB_PATH_DOWN,		"CB_PATH_DOWN" }, \
> +		{ SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRING,	"CB_GSS_CONTEXTS_EXPIRING" }, \
> +		{ SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRED,	"CB_GSS_CONTEXTS_EXPIRED" }, \
> +		{ SEQ4_STATUS_EXPIRED_ALL_STATE_REVOKED, "EXPIRED_ALL_STATE_REVOKED" }, \
> +		{ SEQ4_STATUS_EXPIRED_SOME_STATE_REVOKED, "EXPIRED_SOME_STATE_REVOKED" }, \
> +		{ SEQ4_STATUS_ADMIN_STATE_REVOKED,	"ADMIN_STATE_REVOKED" }, \
> +		{ SEQ4_STATUS_RECALLABLE_STATE_REVOKED,	"RECALLABLE_STATE_REVOKED" }, \
> +		{ SEQ4_STATUS_LEASE_MOVED,		"LEASE_MOVED" }, \
> +		{ SEQ4_STATUS_RESTART_RECLAIM_NEEDED,	"RESTART_RECLAIM_NEEDED" }, \
> +		{ SEQ4_STATUS_CB_PATH_DOWN_SESSION,	"CB_PATH_DOWN_SESSION" }, \
> +		{ SEQ4_STATUS_BACKCHANNEL_FAULT,	"BACKCHANNEL_FAULT" })
> diff --git a/include/trace/misc/rdma.h b/include/trace/misc/rdma.h
> new file mode 100644
> index 000000000000..81bb454fc288
> --- /dev/null
> +++ b/include/trace/misc/rdma.h
> @@ -0,0 +1,168 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Copyright (c) 2017 Oracle.  All rights reserved.
> + */
> +
> +/*
> + * enum ib_event_type, from include/rdma/ib_verbs.h
> + */
> +#define IB_EVENT_LIST				\
> +	ib_event(CQ_ERR)			\
> +	ib_event(QP_FATAL)			\
> +	ib_event(QP_REQ_ERR)			\
> +	ib_event(QP_ACCESS_ERR)			\
> +	ib_event(COMM_EST)			\
> +	ib_event(SQ_DRAINED)			\
> +	ib_event(PATH_MIG)			\
> +	ib_event(PATH_MIG_ERR)			\
> +	ib_event(DEVICE_FATAL)			\
> +	ib_event(PORT_ACTIVE)			\
> +	ib_event(PORT_ERR)			\
> +	ib_event(LID_CHANGE)			\
> +	ib_event(PKEY_CHANGE)			\
> +	ib_event(SM_CHANGE)			\
> +	ib_event(SRQ_ERR)			\
> +	ib_event(SRQ_LIMIT_REACHED)		\
> +	ib_event(QP_LAST_WQE_REACHED)		\
> +	ib_event(CLIENT_REREGISTER)		\
> +	ib_event(GID_CHANGE)			\
> +	ib_event_end(WQ_FATAL)
> +
> +#undef ib_event
> +#undef ib_event_end
> +
> +#define ib_event(x)		TRACE_DEFINE_ENUM(IB_EVENT_##x);
> +#define ib_event_end(x)		TRACE_DEFINE_ENUM(IB_EVENT_##x);
> +
> +IB_EVENT_LIST
> +
> +#undef ib_event
> +#undef ib_event_end
> +
> +#define ib_event(x)		{ IB_EVENT_##x, #x },
> +#define ib_event_end(x)		{ IB_EVENT_##x, #x }
> +
> +#define rdma_show_ib_event(x) \
> +		__print_symbolic(x, IB_EVENT_LIST)
> +
> +/*
> + * enum ib_wc_status type, from include/rdma/ib_verbs.h
> + */
> +#define IB_WC_STATUS_LIST			\
> +	ib_wc_status(SUCCESS)			\
> +	ib_wc_status(LOC_LEN_ERR)		\
> +	ib_wc_status(LOC_QP_OP_ERR)		\
> +	ib_wc_status(LOC_EEC_OP_ERR)		\
> +	ib_wc_status(LOC_PROT_ERR)		\
> +	ib_wc_status(WR_FLUSH_ERR)		\
> +	ib_wc_status(MW_BIND_ERR)		\
> +	ib_wc_status(BAD_RESP_ERR)		\
> +	ib_wc_status(LOC_ACCESS_ERR)		\
> +	ib_wc_status(REM_INV_REQ_ERR)		\
> +	ib_wc_status(REM_ACCESS_ERR)		\
> +	ib_wc_status(REM_OP_ERR)		\
> +	ib_wc_status(RETRY_EXC_ERR)		\
> +	ib_wc_status(RNR_RETRY_EXC_ERR)		\
> +	ib_wc_status(LOC_RDD_VIOL_ERR)		\
> +	ib_wc_status(REM_INV_RD_REQ_ERR)	\
> +	ib_wc_status(REM_ABORT_ERR)		\
> +	ib_wc_status(INV_EECN_ERR)		\
> +	ib_wc_status(INV_EEC_STATE_ERR)		\
> +	ib_wc_status(FATAL_ERR)			\
> +	ib_wc_status(RESP_TIMEOUT_ERR)		\
> +	ib_wc_status_end(GENERAL_ERR)
> +
> +#undef ib_wc_status
> +#undef ib_wc_status_end
> +
> +#define ib_wc_status(x)		TRACE_DEFINE_ENUM(IB_WC_##x);
> +#define ib_wc_status_end(x)	TRACE_DEFINE_ENUM(IB_WC_##x);
> +
> +IB_WC_STATUS_LIST
> +
> +#undef ib_wc_status
> +#undef ib_wc_status_end
> +
> +#define ib_wc_status(x)		{ IB_WC_##x, #x },
> +#define ib_wc_status_end(x)	{ IB_WC_##x, #x }
> +
> +#define rdma_show_wc_status(x) \
> +		__print_symbolic(x, IB_WC_STATUS_LIST)
> +
> +/*
> + * enum ib_cm_event_type, from include/rdma/ib_cm.h
> + */
> +#define IB_CM_EVENT_LIST			\
> +	ib_cm_event(REQ_ERROR)			\
> +	ib_cm_event(REQ_RECEIVED)		\
> +	ib_cm_event(REP_ERROR)			\
> +	ib_cm_event(REP_RECEIVED)		\
> +	ib_cm_event(RTU_RECEIVED)		\
> +	ib_cm_event(USER_ESTABLISHED)		\
> +	ib_cm_event(DREQ_ERROR)			\
> +	ib_cm_event(DREQ_RECEIVED)		\
> +	ib_cm_event(DREP_RECEIVED)		\
> +	ib_cm_event(TIMEWAIT_EXIT)		\
> +	ib_cm_event(MRA_RECEIVED)		\
> +	ib_cm_event(REJ_RECEIVED)		\
> +	ib_cm_event(LAP_ERROR)			\
> +	ib_cm_event(LAP_RECEIVED)		\
> +	ib_cm_event(APR_RECEIVED)		\
> +	ib_cm_event(SIDR_REQ_ERROR)		\
> +	ib_cm_event(SIDR_REQ_RECEIVED)		\
> +	ib_cm_event_end(SIDR_REP_RECEIVED)
> +
> +#undef ib_cm_event
> +#undef ib_cm_event_end
> +
> +#define ib_cm_event(x)		TRACE_DEFINE_ENUM(IB_CM_##x);
> +#define ib_cm_event_end(x)	TRACE_DEFINE_ENUM(IB_CM_##x);
> +
> +IB_CM_EVENT_LIST
> +
> +#undef ib_cm_event
> +#undef ib_cm_event_end
> +
> +#define ib_cm_event(x)		{ IB_CM_##x, #x },
> +#define ib_cm_event_end(x)	{ IB_CM_##x, #x }
> +
> +#define rdma_show_ib_cm_event(x) \
> +		__print_symbolic(x, IB_CM_EVENT_LIST)
> +
> +/*
> + * enum rdma_cm_event_type, from include/rdma/rdma_cm.h
> + */
> +#define RDMA_CM_EVENT_LIST			\
> +	rdma_cm_event(ADDR_RESOLVED)		\
> +	rdma_cm_event(ADDR_ERROR)		\
> +	rdma_cm_event(ROUTE_RESOLVED)		\
> +	rdma_cm_event(ROUTE_ERROR)		\
> +	rdma_cm_event(CONNECT_REQUEST)		\
> +	rdma_cm_event(CONNECT_RESPONSE)		\
> +	rdma_cm_event(CONNECT_ERROR)		\
> +	rdma_cm_event(UNREACHABLE)		\
> +	rdma_cm_event(REJECTED)			\
> +	rdma_cm_event(ESTABLISHED)		\
> +	rdma_cm_event(DISCONNECTED)		\
> +	rdma_cm_event(DEVICE_REMOVAL)		\
> +	rdma_cm_event(MULTICAST_JOIN)		\
> +	rdma_cm_event(MULTICAST_ERROR)		\
> +	rdma_cm_event(ADDR_CHANGE)		\
> +	rdma_cm_event_end(TIMEWAIT_EXIT)
> +
> +#undef rdma_cm_event
> +#undef rdma_cm_event_end
> +
> +#define rdma_cm_event(x)	TRACE_DEFINE_ENUM(RDMA_CM_EVENT_##x);
> +#define rdma_cm_event_end(x)	TRACE_DEFINE_ENUM(RDMA_CM_EVENT_##x);
> +
> +RDMA_CM_EVENT_LIST
> +
> +#undef rdma_cm_event
> +#undef rdma_cm_event_end
> +
> +#define rdma_cm_event(x)	{ RDMA_CM_EVENT_##x, #x },
> +#define rdma_cm_event_end(x)	{ RDMA_CM_EVENT_##x, #x }
> +
> +#define rdma_show_cm_event(x) \
> +		__print_symbolic(x, RDMA_CM_EVENT_LIST)
> diff --git a/include/trace/misc/sunrpc.h b/include/trace/misc/sunrpc.h
> new file mode 100644
> index 000000000000..588557d07ea8
> --- /dev/null
> +++ b/include/trace/misc/sunrpc.h
> @@ -0,0 +1,18 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Copyright (c) 2021 Oracle and/or its affiliates.
> + *
> + * Common types and format specifiers for sunrpc.
> + */
> +
> +#if !defined(_TRACE_SUNRPC_BASE_H)
> +#define _TRACE_SUNRPC_BASE_H
> +
> +#include <linux/tracepoint.h>
> +
> +#define SUNRPC_TRACE_PID_SPECIFIER	"%08x"
> +#define SUNRPC_TRACE_CLID_SPECIFIER	"%08x"
> +#define SUNRPC_TRACE_TASK_SPECIFIER \
> +	"task:" SUNRPC_TRACE_PID_SPECIFIER "@" SUNRPC_TRACE_CLID_SPECIFIER
> +
> +#endif /* _TRACE_SUNRPC_BASE_H */
> 
> 

--
Chuck Lever







[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux