diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | tapset/memory.stp | 17 | ||||
-rwxr-xr-x | testsuite/buildok/memory.stp | 5 |
3 files changed, 27 insertions, 0 deletions
@@ -1,3 +1,8 @@ +2007-04-24 Will Cohen <wcohen@redhat.com> + + * tapset/memory.stp: Add matching vm.pagefault.return + * testsuite/buildok/memory.stp: Test vm.pagefault.return. + 2007-04-24 Martin Hunt <hunt@redhat.com> * stp_check.in: More tweaking of mount statement. diff --git a/tapset/memory.stp b/tapset/memory.stp index a3ed628f..61c77dff 100644 --- a/tapset/memory.stp +++ b/tapset/memory.stp @@ -26,6 +26,23 @@ probe vm.pagefault = kernel.function( address = $address } +/* probe vm.pagefault.return + * + * Records type of fault that occurred. + * + * Context: + * The process which triggered the fault. + * + * Arguments: + * fault_type - type of fault + */ +probe vm.pagefault.return = kernel.function( + %( kernel_v >= "2.6.13" %? "__handle_mm_fault" %: "handle_mm_fault" %) + ).return +{ + fault_type = $return +} + /* Return which node the given address belongs to in a NUMA system */ function addr_to_node:long(addr:long) /* pure */ %{ diff --git a/testsuite/buildok/memory.stp b/testsuite/buildok/memory.stp index ce9f28cb..12d4e4a7 100755 --- a/testsuite/buildok/memory.stp +++ b/testsuite/buildok/memory.stp @@ -3,3 +3,8 @@ probe vm.pagefault { printf("ppname: %s, %d, %p\n", probefunc(), write_access, address) } + +probe vm.pagefault.return +{ + printf("ppname: %s, %d\n", probefunc(), fault_type) +} |