Bug 1547238
| Summary: | broken probe vfs.add_to_page_cache | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Paulo Andrade <pandrade> |
| Component: | systemtap | Assignee: | Frank Ch. Eigler <fche> |
| Status: | CLOSED ERRATA | QA Contact: | Martin Cermak <mcermak> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | 7.4 | CC: | cww, jistone, lberk, mcermak, mjw |
| Target Milestone: | rc | Keywords: | Patch |
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | systemtap-3.3-2.el7 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2018-10-30 10:46:00 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 1477664 | ||
Commit e40b26c5bbaa (based on your patch) should fix this. http://tinyurl.com/y7wo82km Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2018:3168 |
This might be reassigned to kernel, as it is broken since rhel7 kernel commit 06c42e3f5156a048a2e50ec013646bfdda916688 that does some shortcuts, with the side effect of not triggering the probes. From my understanding of the semantics, the new patch should not have the "!" operator, so, fixing this issue only on rhel7 would require this patch: """ --- /usr/share/systemtap/tapset/linux/vfs.stp.orig +++ /usr/share/systemtap/tapset/linux/vfs.stp @@ -862,8 +862,8 @@ } probe vfs.add_to_page_cache = - kernel.function("add_to_page_cache_locked") !, - kernel.function("add_to_page_cache") + kernel.function("add_to_page_cache_lru"), + kernel.function("add_to_page_cache_locked") { dev = $mapping->host->i_sb->s_dev devname = __find_bdevname(dev, $mapping->host->i_sb->s_bdev) @@ -879,8 +879,8 @@ } probe vfs.add_to_page_cache.return = - kernel.function("add_to_page_cache_locked").return !, - kernel.function("add_to_page_cache").return + kernel.function("add_to_page_cache_lru").return, + kernel.function("add_to_page_cache_locked").return { name = "vfs.add_to_page_cache" retstr = sprintf("%d", $return) """ quick and dirty test case is: """ #!/bin/stap probe vfs.add_to_page_cache { printf("%s\n", probefunc()); } """