summaryrefslogtreecommitdiffstats
path: root/nfsd_lookup.stp
blob: 1c9e9b4a03c85f80dbf5d85db339cb4388f09d82 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
global check_exp, check_rqstp_flavor

probe module("nfsd").function("nfsd_lookup")
{
	printf("nfsd_lookup: rqstp %p fhp %p name %s\n", 
		$rqstp, $fhp,  kernel_string($name));
}
probe module("nfsd").function("nfsd_lookup").return
{
	if ($return)
		printf("nfsd_lookup: %s\n", nfsderror($return));
}
probe module("nfsd").function("nfsd_lookup_dentry").return
{
	if ($return != 0)
		printf("  nfsd_lookup_dentry: %s\n", nfsderror($return));
}
probe module("nfsd").function("check_nfsd_access")
{
	check_exp = $exp;
	check_rqstp_flavor = $rqstp->rq_flavor;
}
probe module("nfsd").function("check_nfsd_access").return
{
	if ($return != 0) {
		printf("  check_nfsd_access: %s\n", nfsderror($return));
		printf("                   : rq_flavor %d %s\n", 
			check_rqstp_flavor, svc_export_flavors(check_exp));
	}
}
probe module("nfsd").function("fh_verify")
{
	printf("    fh_verify: rqstp %p fhp %p type %d access %d\n", 
		$rqstp, $fhp, $type, $access);
	printf("         %s\n", svcfhfmt($fhp));
}
probe module("nfsd").function("fh_verify").return
{
	if ($return)
		printf("    fh_verify: %s\n", nfsderror($return));
}
probe module("nfsd").function("nfsd_setuser_and_check_port")
{
	printf("      nfsd_setuser_and_check_port: rqstp %p exp %p \n", 
		$rqstp, $exp);
}
probe module("nfsd").function("nfsd_setuser_and_check_port").return
{
	if ($return)
		printf("      nfsd_setuser_and_check_port: %s\n", nfsderror($return));
}
probe module("nfsd").function("check_nfsd_access")
{
	printf("      check_nfsd_access: rqstp %p exp %p \n", 
		$rqstp, $exp);
}
probe module("nfsd").function("check_nfsd_access").return
{
	if ($return)
		printf("      check_nfsd_access: %s\n", nfsderror($return));
}
probe module("nfsd").function("rqst_exp_parent")
{
	printf("    rqst_exp_parent: rqstp %p mnt %d dentry %d\n", 
		$rqstp, $mnt, $dentry);
}
probe module("nfsd").function("rqst_exp_parent").return
{
		printf("    rqst_exp_parent: %p\n", $return);
}
probe kernel.function("lookup_one_len")
{
	printf("    lookup_one_len: name %p dentry %p len %d\n", 
		$name, $base, $len);
}
probe kernel.function("lookup_one_len").return
{
		printf("    lookup_one_len: %p\n", $return);
}
probe module("nfsd").function("nfsd_cross_mnt")
{
	printf("    nfsd_cross_mnt: rqstp %p\n", $rqstp);
}
probe module("nfsd").function("nfsd_cross_mnt").return
{
	if ($return)
		printf("    nfsd_cross_mnt: %s\n", nfsderror($return));
}
probe module("nfsd").function("rqst_exp_get_by_name")
{
	printf("      rqst_exp_get_by_name: rqstp %p mnt %p dentry %p\n", 
		$rqstp, $mnt, $dentry);
}
probe module("nfsd").function("rqst_exp_get_by_name").return
{
		printf("      rqst_exp_get_by_name: %p\n", $return);
}
probe begin { log("starting nfsd_lookup probe") }
probe end { log("ending nfsd_lookup probe") }