]> sourceware.org Git - systemtap.git/commitdiff
nfsservctl syscall was removed in kernel 3.0/2.6.40.
authorMark Wielaard <mjw@redhat.com>
Sun, 30 Sep 2012 12:11:07 +0000 (14:11 +0200)
committerMark Wielaard <mjw@redhat.com>
Sun, 30 Sep 2012 21:51:42 +0000 (23:51 +0200)
See kernel commits 49b2868 and d4d7b2a.

This used to resolve partly before because when CONFIG_COMPAT = "y"
there would still be a compat_sys_nfsservctl. But that was slightly
bogus because without CONFIG_NFSD that would just be:

long asmlinkage compat_sys_nfsservctl(int cmd, void *notused, void *notused2)
{
       return sys_ni_syscall();
}

tapset/linux/aux_syscalls.stp
tapset/linux/nd_syscalls2.stp
tapset/linux/syscalls2.stp
testsuite/buildok/aux_syscalls-embedded.stp
testsuite/buildok/nd_syscalls2-detailed.stp
testsuite/buildok/syscalls2-detailed.stp

index 55f476247fc0807912dbf08b2937dfb397da449b..957de73a4e8e1c448a9e1be14c11d2576e66a832 100644 (file)
@@ -553,7 +553,9 @@ function _itimer_which_str(which) {
 
 /*
  * Return the command name for nfsservctl()
+ * nfsservctl was removed in kernel 3.0/2.6.40.
  */
+%( kernel_v < "2.6.40" && CONFIG_NFSD == "[ym]" %?
 function _nfsctl_cmd_str(cmd) {
        if(cmd == 0) return "NFSCTL_SVC"
        if(cmd == 1) return "NFSCTL_ADDCLIENT"
@@ -566,6 +568,7 @@ function _nfsctl_cmd_str(cmd) {
        if(cmd == 8) return "NFSCTL_GETFS"
        return sprintf("UNRECOGNIZED VALUE: %d", cmd)
 }
+%)
 
 /*
  * Return  the  symbolic   string  representation
index 42a9ccf4d20a6a0166ce8858e385bf155dda633c..f193f824aad2fc4ace8b1de69e482aaffc279e4e 100644 (file)
@@ -67,6 +67,8 @@ probe nd_syscall.compat_nanosleep.return = kprobe.function("compat_sys_nanosleep
 # long compat_sys_nfsservctl(int cmd, struct compat_nfsctl_arg __user *arg,
 #                                      union compat_nfsctl_res __user *res)
 #
+# nfsservctl was removed in kernel 3.0/2.6.40.
+%( kernel_v < "2.6.40" && CONFIG_NFSD == "[ym]" %?
 probe nd_syscall.nfsservctl = kprobe.function("sys_nfsservctl") ?,
                               kprobe.function("compat_sys_nfsservctl") ?
 {
@@ -87,6 +89,7 @@ probe nd_syscall.nfsservctl.return = kprobe.function("sys_nfsservctl").return ?,
        name = "nfsservctl"
        retstr = returnstr(1)
 }
+%)
 
 # nice _______________________________________________________
 # long sys_nice(int increment)
index f3ae2117c86d22a0826ad0eabcd3bbc39cad77e1..63faae4ee40de5238ec434d4c1ad5fac6151478d 100644 (file)
@@ -59,7 +59,8 @@ probe syscall.compat_nanosleep.return = kernel.function("compat_sys_nanosleep").
 # long compat_sys_nfsservctl(int cmd, struct compat_nfsctl_arg __user *arg,
 #                                      union compat_nfsctl_res __user *res)
 #
-%( CONFIG_NFSD == "[ym]" || CONFIG_COMPAT == "y" %?
+# nfsservctl was removed in kernel 3.0/2.6.40.
+%( kernel_v < "2.6.40" && CONFIG_NFSD == "[ym]" %?
 probe syscall.nfsservctl = kernel.function("sys_nfsservctl").call ?,
                            kernel.function("compat_sys_nfsservctl").call ?
 {
index ffefc1417685a62f5c546545ec16ac9a54106a87..1fb5114b35a3de04786d596c0bcfab866463fd3a 100755 (executable)
@@ -26,7 +26,12 @@ probe begin {
 
        print (_sigprocmask_how_str(0))
        print (_itimer_which_str(0))
+
+# nfsservctl was removed in kernel 3.0/2.6.40.
+%( kernel_v < "2.6.40" && CONFIG_NFSD == "[ym]" %?
        print (_nfsctl_cmd_str(0))
+%)
+
        print (_get_wc_str(0))
        print (_flock_cmd_str(0))
 
index 8abdd2a9dc049fe91419d6855fd4d4c3f0526e55..dd560f9e0df63a8629f86f901915183340b30e0c 100755 (executable)
@@ -10,6 +10,8 @@ probe nd_syscall.nanosleep.return, nd_syscall.compat_nanosleep.return ?
        printf("%s %s\n", name, retstr)
 }
 
+# nfsservctl was removed in kernel 3.0/2.6.40.
+%( kernel_v < "2.6.40" && CONFIG_NFSD == "[ym]" %?
 probe nd_syscall.nfsservctl
 {
        printf("%s(%s)\n", name, argstr)
@@ -19,6 +21,7 @@ probe nd_syscall.nfsservctl.return
 {
        printf("%s %s\n", name, retstr)
 }
+%)
 
 probe nd_syscall.nice ?
 {
index 24bb904e817e9ffe508d354ac7ff7962d214807c..0a66c217d4080a40a206b09841533a2360813022 100755 (executable)
@@ -10,6 +10,8 @@ probe syscall.nanosleep.return, syscall.compat_nanosleep.return ?
        printf("%s %s\n", name, retstr)
 }
 
+# nfsservctl was removed in kernel 3.0/2.6.40.
+%( kernel_v < "2.6.40" && CONFIG_NFSD == "[ym]" %?
 probe syscall.nfsservctl ?
 {
        printf("%s(%s)\n", name, argstr)
@@ -19,6 +21,7 @@ probe syscall.nfsservctl.return ?
 {
        printf("%s %s\n", name, retstr)
 }
+%)
 
 probe syscall.nice ?
 {
This page took 0.04336 seconds and 5 git commands to generate.