]> sourceware.org Git - systemtap.git/commitdiff
Tapset and testsuite updates against @cast() change 00ee19ff03
authorMartin Cermak <mcermak@redhat.com>
Thu, 9 Jul 2020 07:19:01 +0000 (09:19 +0200)
committerMartin Cermak <mcermak@redhat.com>
Thu, 9 Jul 2020 07:19:01 +0000 (09:19 +0200)
Commit 00ee19ff030f665df7e087a579f39105256a0253 changed how @cast()
operations work and they no longer default to using the kernel
debuginfo for type information.  Need to include kernel as location for
this information for the  @cast() rather than just assuming a default.

These are respective tapset and testsuite minor updates.

tapset/linux/networking.stp
tapset/linux/scsi.stp
testsuite/buildok/pretty.stp
testsuite/semok/cast.stp
testsuite/semok/pretty.stp
testsuite/semok/sizeof.stp
testsuite/semok/thirtyeight.stp
testsuite/semok/thirtysix.stp
testsuite/systemtap.base/bitfield.stp
testsuite/systemtap.base/target_set.stp
testsuite/systemtap.context/usymbols.exp

index 69843a7989fd6d3889cd6acf290ba2a4fbf883a3..0b52cbc501b60ca95cda9410b373b95cc02f5810 100644 (file)
@@ -69,7 +69,7 @@
 
 /* A function that returns the device name given the net_device struct */
 function get_netdev_name:string (addr:long) {
-       return kernel_string(@cast(addr, "net_device")->name)
+       return kernel_string(@cast(addr, "net_device", "kernel")->name)
 }
 
 /**
index 35779421bac74f6b68dcb0113d6b0b7bb246c93e..5359fe8178c535dc27ea8eb02637d4fa222317fb 100644 (file)
@@ -179,8 +179,8 @@ probe scsi.iocompleted
 
 function timer_pending:long(timer:long)
 {
-       return (@choose_defined(@cast(timer, "timer_list")->entry->next,
-                               @cast(timer, "timer_list")->base) != 0)
+       return (@choose_defined(@cast(timer, "timer_list", "kernel")->entry->next,
+                               @cast(timer, "timer_list", "kernel")->base) != 0)
 }
 
 function scsi_timer_pending:long(cmd:long)
index 85c9cd9307c16da1655c445752dc4f51ea5ae8b2..a2fc7812615880392229f8ccf5b5293b337e8588 100755 (executable)
@@ -6,14 +6,14 @@ global i = 1
 # pretty-printing with @cast
 probe begin {
     t = task_current()
-    log(@cast(t, "task_struct")->fs$)
-    log(@cast(t, "task_struct")->fs$$)
-    log(@cast(t, "task_struct")->comm$)
-    log(@cast(t, "task_struct")->comm$$)
-    log(@cast(t, "task_struct")->comm[0]$)
-    log(@cast(t, "task_struct")->comm[0]$$)
-    log(@cast(t, "task_struct")->comm[i]$)
-    log(@cast(t, "task_struct")->comm[i]$$)
+    log(@cast(t, "task_struct", "kernel")->fs$)
+    log(@cast(t, "task_struct", "kernel")->fs$$)
+    log(@cast(t, "task_struct", "kernel")->comm$)
+    log(@cast(t, "task_struct", "kernel")->comm$$)
+    log(@cast(t, "task_struct", "kernel")->comm[0]$)
+    log(@cast(t, "task_struct", "kernel")->comm[0]$$)
+    log(@cast(t, "task_struct", "kernel")->comm[i]$)
+    log(@cast(t, "task_struct", "kernel")->comm[i]$$)
 }
 
 # pretty-printing in dwarf kernel context
index d72763c16e2a8fec72337938fc563777766ff89d..fe78e36c0a42984ab2395a96168e98d28e7d4f26 100755 (executable)
@@ -2,7 +2,7 @@
 
 probe begin {
     // basic @cast test, with and without specifying kernel
-    println(@cast(0, "task_struct")->tgid)
+    println(@cast(0, "task_struct", "kernel")->tgid)
     println(@cast(0, "task_struct", "kernel")->tgid)
 
     // check module-search paths
@@ -25,5 +25,5 @@ probe begin {
     @cast(0, "task_struct", "no_such_module")->tgid
 
     // PR11556: we should be able to treat the initial pointer like an array too
-    println(@cast(0, "task_struct")[42]->tgid)
+    println(@cast(0, "task_struct", "kernel")[42]->tgid)
 }
index 0211d86ddffdfff6bcbc9221ded1787463f17fae..25490e7c9cb98c9fe4a6ac6b3adffc151acb38ee 100755 (executable)
@@ -12,16 +12,16 @@ global i = 1
 # pretty-printing with @cast
 probe begin {
     t = task_current()
-    log(@cast(t, "task_struct")$)
-    log(@cast(t, "task_struct")$$)
-    log(@cast(t, "task_struct")->fs$)
-    log(@cast(t, "task_struct")->fs$$)
-    log(@cast(t, "task_struct")->comm$)
-    log(@cast(t, "task_struct")->comm$$)
-    log(@cast(t, "task_struct")->comm[0]$)
-    log(@cast(t, "task_struct")->comm[0]$$)
-    log(@cast(t, "task_struct")->comm[i]$)
-    log(@cast(t, "task_struct")->comm[i]$$)
+    log(@cast(t, "task_struct", "kernel")$)
+    log(@cast(t, "task_struct", "kernel")$$)
+    log(@cast(t, "task_struct", "kernel")->fs$)
+    log(@cast(t, "task_struct", "kernel")->fs$$)
+    log(@cast(t, "task_struct", "kernel")->comm$)
+    log(@cast(t, "task_struct", "kernel")->comm$$)
+    log(@cast(t, "task_struct", "kernel")->comm[0]$)
+    log(@cast(t, "task_struct", "kernel")->comm[0]$$)
+    log(@cast(t, "task_struct", "kernel")->comm[i]$)
+    log(@cast(t, "task_struct", "kernel")->comm[i]$$)
 }
 
 # pretty-printing in dwarf kernel context
index 8e35e295b7f47309cd3c052c28faf3d90e08e7cf..a5a6bbbf84c1e7f6c4c1c5aca1830b5191aaec9d 100755 (executable)
@@ -1,7 +1,7 @@
 #! stap -p2
 
 probe begin {
-    println("task_struct: ", @cast_sizeof("task_struct"))
+    println("task_struct: ", @cast_sizeof("task_struct"))
     println("task_struct: ", @cast_module_sizeof("kernel", "task_struct"))
     println("task_struct: ", @cast_module_sizeof("kernel<linux/sched.h>", "task_struct"))
     println("FILE: ", @cast_module_sizeof("<stdio.h>", "FILE"))
index 15189b7765b3c9c83440cac601369d4194d1fcc7..50187959faca204635ff7ebad0f990dcab127ed3 100755 (executable)
@@ -7,4 +7,4 @@
 probe kernel.function("do_sys_open") { println(@defined($mode) ? 1 : $nosuchvar) }
 probe kernel.trace("sched_switch")? { println(@defined($next->pid) ? 1 : $nosuchvar) }
 probe procfs.write { println(@defined($value) ? 1 : $nosuchvar) }
-probe begin { println(@defined(@cast(0, "task_struct")->pid) ? 1 : $nosuchvar) }
+probe begin { println(@defined(@cast(0, "task_struct", "kernel")->pid) ? 1 : $nosuchvar) }
index 14f10c18778b01d59eeeec5267d361e9f6330b6f..0adae14aa30277e5e0bee1544ce646ddf737da6e 100755 (executable)
@@ -17,17 +17,17 @@ probe begin,end,error,never { println(@defined($nosuchvar)?$nosuchvar:0) } # inv
 probe timer.s(1),timer.jiffies(1) { println(@defined($nosuchvar)?$nosuchvar:0) } # invalid
 probe timer.profile { println(@defined($nosuchvar)?$nosuchvar:0) } # invalid
 
-probe begin { println(@defined(@cast(0, "task_struct")->foo)?$nosuchvar:0) } # invalid
-probe begin { println(@defined(@cast(0, "task_struct")->pid)?1:$nosuchvar) } # valid
-probe kernel.function("do_sys_open") { println(@defined(@cast(0, "task_struct")->foo)?$nosuchvar:0) } # invalid
-probe kernel.function("do_sys_open") { println(@defined(@cast(0, "task_struct")->pid)?1:$nosuchvar) } # valid
+probe begin { println(@defined(@cast(0, "task_struct", "kernel")->foo)?$nosuchvar:0) } # invalid
+probe begin { println(@defined(@cast(0, "task_struct", "kernel")->pid)?1:$nosuchvar) } # valid
+probe kernel.function("do_sys_open") { println(@defined(@cast(0, "task_struct", "kernel")->foo)?$nosuchvar:0) } # invalid
+probe kernel.function("do_sys_open") { println(@defined(@cast(0, "task_struct", "kernel")->pid)?1:$nosuchvar) } # valid
 
-function foo1() { println(@defined(@cast(0, "task_struct")->foo)?$nosuchvar:0) } # invalid
-function foo2() { println(@defined(@cast(0, "task_struct")->pid)?1:$nosuchvar) } # valid
+function foo1() { println(@defined(@cast(0, "task_struct", "kernel")->foo)?$nosuchvar:0) } # invalid
+function foo2() { println(@defined(@cast(0, "task_struct", "kernel")->pid)?1:$nosuchvar) } # valid
 probe begin { foo1(); foo2(); }
 
 # PR11598: support @defined(&...)
-probe begin { println(@defined(@cast(0, "task_struct")->rcu)?$nosuchvar:0) } # invalid
-probe begin { println(@defined(&@cast(0, "task_struct")->rcu)?1:$nosuchvar) } # valid
+probe begin { println(@defined(@cast(0, "task_struct", "kernel")->rcu)?$nosuchvar:0) } # invalid
+probe begin { println(@defined(&@cast(0, "task_struct", "kernel")->rcu)?1:$nosuchvar) } # valid
 probe kernel.function("release_task") { println(@defined($p->rcu)?$nosuchvar:0) } # invalid
 probe kernel.function("release_task") { println(@defined(&$p->rcu)?1:$nosuchvar) } # valid
index 020810825dcd14b863e85c4b367c91de90503f3a..b5f7b89a7fb42b1d09a6ddc0d4a80c10e7bcac45 100644 (file)
@@ -11,8 +11,8 @@ function check:long(ack:long, urg:long) {
   ptr = get_ptr()
 
   /* set the bits with cast */
-  @cast(ptr, "tcphdr")->ack = ack
-  @cast(ptr, "tcphdr")->urg = urg
+  @cast(ptr, "tcphdr", "kernel")->ack = ack
+  @cast(ptr, "tcphdr", "kernel")->urg = urg
 
   /* check that reading with embedded-C is ok */
   real_ack = get_ack()
@@ -20,8 +20,8 @@ function check:long(ack:long, urg:long) {
   errors = (ack != real_ack) + (urg != real_urg)
 
   /* check that reading with a cast is ok */
-  cast_ack = @cast(ptr, "tcphdr")->ack
-  cast_urg = @cast(ptr, "tcphdr")->urg
+  cast_ack = @cast(ptr, "tcphdr", "kernel")->ack
+  cast_urg = @cast(ptr, "tcphdr", "kernel")->urg
   errors += (ack != cast_ack) + (urg != cast_urg)
 
   if (errors)
index ad4dca68eae4c09c0721641d79f78edc86405dcd..7c458cb1b43361117f589db773ca6ebd005f1b15 100644 (file)
@@ -19,13 +19,13 @@ probe begin
 probe syscall.nanosleep
 {
     if (target_set_pid(pid())
-       && user_long(&@cast(req_uaddr, "struct timespec")->tv_sec) == $1)
+       && user_long(&@cast(req_uaddr, "struct timespec", "kernel")->tv_sec) == $1)
        target_set_report()
 }
 probe syscall.compat_nanosleep ?
 {
     if (target_set_pid(pid())
-       && user_long(&@cast(req_uaddr, "struct compat_timespec")->tv_sec) == $1)
+       && user_long(&@cast(req_uaddr, "struct compat_timespec", "kernel")->tv_sec) == $1)
        target_set_report()
 }
 
index f53c1cd97e4dfa19fe6f8f8a3fe3aff53df8b18d..e12f067c96776fe4c2fa841c8af3fbd920005a2c 100644 (file)
@@ -20,7 +20,7 @@ set testscript {
     probe syscall.rt_sigaction {
       if (pid() == target() && execname() == "%s") {
        // Note user address.
-       handler = user_long(&@cast(act_uaddr, "struct sigaction")->sa_handler);
+       handler = user_long(&@cast(act_uaddr, "struct sigaction", "kernel")->sa_handler);
        try {
                printf("handler: %%s (%%s)\n", usymname(handler), umodname(handler));
        } catch {
@@ -31,9 +31,9 @@ set testscript {
     probe syscall.rt_sigaction32 ? {
       if (pid() == target() && execname() == "%s") {
        // Note user address.
-       handler = user_long(@defined(@cast(0, "compat_sigaction")->sa_handler)
-                           ? &@cast(act_uaddr, "compat_sigaction")->sa_handler
-                           : &@cast(act_uaddr, "sigaction32")->sa_handler);
+       handler = user_long(@defined(@cast(0, "compat_sigaction", "kernel")->sa_handler)
+                           ? &@cast(act_uaddr, "compat_sigaction", "kernel")->sa_handler
+                           : &@cast(act_uaddr, "sigaction32", "kernel")->sa_handler);
        try {
                printf("handler: %%s (%%s)\n", usymname(handler), umodname(handler));
        } catch {
This page took 0.044901 seconds and 5 git commands to generate.