Print this page
NEX-16712 NFS dtrace providers do not support per-share filtering
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Yuri Pankon <yuri.pankov@nexenta.com>
NEX-15555 SMB2 async redesign
NEX-15061 smtorture smb2.lock.cancel.cancel is failed
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Also follow-up change to:
NEX-1643 dtrace provider for smbsrv (remove "done2" probes,
which don't make sense with the new async design)
NEX-15555 SMB2 async redesign
NEX-15061 smtorture smb2.lock.cancel.cancel is failed
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Also follow-up change to:
NEX-1643 dtrace provider for smbsrv (remove "done2" probes,
which don't make sense with the new async design)
NEX-1643 dtrace provider for smbsrv
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
@@ -19,10 +19,11 @@
* CDDL HEADER END
*/
/*
* Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2013 by Delphix. All rights reserved.
+ * Copyright 2018 Nexenta Systems, Inc. All rights reserved.
*/
#ifndef _SYS_SDT_H
#define _SYS_SDT_H
@@ -228,29 +229,44 @@
#define DTRACE_NFSV3_3(name, type1, arg1, type2, arg2, \
type3, arg3) \
DTRACE_PROBE3(__nfsv3_##name, type1, arg1, type2, arg2, \
type3, arg3);
+
#define DTRACE_NFSV3_4(name, type1, arg1, type2, arg2, \
type3, arg3, type4, arg4) \
DTRACE_PROBE4(__nfsv3_##name, type1, arg1, type2, arg2, \
type3, arg3, type4, arg4);
+#define DTRACE_NFSV3_5(name, type1, arg1, type2, arg2, \
+ type3, arg3, type4, arg4, type5, arg5) \
+ DTRACE_PROBE5(__nfsv3_##name, type1, arg1, type2, arg2, \
+ type3, arg3, type4, arg4, type5, arg5);
+
#define DTRACE_NFSV4_1(name, type1, arg1) \
DTRACE_PROBE1(__nfsv4_##name, type1, arg1);
#define DTRACE_NFSV4_2(name, type1, arg1, type2, arg2) \
DTRACE_PROBE2(__nfsv4_##name, type1, arg1, type2, arg2);
#define DTRACE_NFSV4_3(name, type1, arg1, type2, arg2, type3, arg3) \
DTRACE_PROBE3(__nfsv4_##name, type1, arg1, type2, arg2, type3, arg3);
-#define DTRACE_SMB_1(name, type1, arg1) \
- DTRACE_PROBE1(__smb_##name, type1, arg1);
+/*
+ * The SMB probes are done a little differently from the other probes
+ * in this file for the benefit of the libfksmbsrv USDT provider.
+ * See: lib/smbsrv/libfksmbsrv/common/sys/sdt.h
+ */
+#define DTRACE_SMB_START(name, type1, arg1) \
+ DTRACE_PROBE1(__smb_##name##__start, type1, arg1);
+#define DTRACE_SMB_DONE(name, type1, arg1) \
+ DTRACE_PROBE1(__smb_##name##__done, type1, arg1);
-#define DTRACE_SMB_2(name, type1, arg1, type2, arg2) \
- DTRACE_PROBE2(__smb_##name, type1, arg1, type2, arg2);
+#define DTRACE_SMB2_START(name, type1, arg1) \
+ DTRACE_PROBE1(__smb2_##name##__start, type1, arg1);
+#define DTRACE_SMB2_DONE(name, type1, arg1) \
+ DTRACE_PROBE1(__smb2_##name##__done, type1, arg1);
#define DTRACE_IP(name) \
DTRACE_PROBE(__ip_##name);
#define DTRACE_IP1(name, type1, arg1) \