|
|
6fb079 |
commit 8f3498781413a710dc9e128f5a96891a6a18fc52
|
|
|
6fb079 |
Author: Martin Cermak <mcermak@redhat.com>
|
|
|
6fb079 |
Date: Wed Dec 14 17:37:58 2022 +0100
|
|
|
6fb079 |
|
|
|
6fb079 |
PR29766: kernel.function("__set_page_dirty_buffers") not found in vfs.stp
|
|
|
6fb079 |
|
|
|
6fb079 |
Updates needed for 6.1.0-65.fc38 compatibility.
|
|
|
6fb079 |
|
|
|
6fb079 |
diff --git a/tapset/linux/vfs.stp b/tapset/linux/vfs.stp
|
|
|
6fb079 |
index e3c1a3032..aebeb3fc0 100644
|
|
|
6fb079 |
--- a/tapset/linux/vfs.stp
|
|
|
6fb079 |
+++ b/tapset/linux/vfs.stp
|
|
|
6fb079 |
@@ -822,13 +822,15 @@ probe vfs.buffer_migrate_page.return =
|
|
|
6fb079 |
}
|
|
|
6fb079 |
|
|
|
6fb079 |
/* default if aop not set, __set_page_dirty_nobuffers usually used if set */
|
|
|
6fb079 |
-probe vfs.__set_page_dirty_buffers = kernel.function("__set_page_dirty_buffers")
|
|
|
6fb079 |
+/* block_dirty_folio related to kernel commit e621900ad28b748e058b81d6078 */
|
|
|
6fb079 |
+probe vfs.__set_page_dirty_buffers = kernel.function("__set_page_dirty_buffers")!,
|
|
|
6fb079 |
+ kernel.function("block_dirty_folio")
|
|
|
6fb079 |
{
|
|
|
6fb079 |
- dev = __page_dev($page)
|
|
|
6fb079 |
- devname = __find_bdevname(dev, __page_bdev($page))
|
|
|
6fb079 |
- ino = __page_ino($page)
|
|
|
6fb079 |
+ dev = __page_dev(@choose_defined($page, $folio))
|
|
|
6fb079 |
+ devname = __find_bdevname(dev, __page_bdev(@choose_defined($page, $folio)))
|
|
|
6fb079 |
+ ino = __page_ino(@choose_defined($page, $folio))
|
|
|
6fb079 |
|
|
|
6fb079 |
- index = __page_index($page)
|
|
|
6fb079 |
+ index = __page_index(@choose_defined($page, $folio))
|
|
|
6fb079 |
|
|
|
6fb079 |
name = "__set_page_dirty_buffers"
|
|
|
6fb079 |
argstr = sprintf("%d", index)
|
|
|
6fb079 |
@@ -837,7 +839,8 @@ probe vfs.__set_page_dirty_buffers = kernel.function("__set_page_dirty_buffers")
|
|
|
6fb079 |
units = "pages"
|
|
|
6fb079 |
}
|
|
|
6fb079 |
probe vfs.__set_page_dirty_buffers.return =
|
|
|
6fb079 |
- kernel.function("__set_page_dirty_buffers").return
|
|
|
6fb079 |
+ kernel.function("__set_page_dirty_buffers").return!,
|
|
|
6fb079 |
+ kernel.function("block_dirty_folio")
|
|
|
6fb079 |
{
|
|
|
6fb079 |
name = "__set_page_dirty_buffers"
|
|
|
6fb079 |
retstr = sprintf("%d", $return)
|
|
|
6fb079 |
@@ -914,8 +917,9 @@ probe __vfs.ext4_mpage_readpages.return =
|
|
|
6fb079 |
|
|
|
6fb079 |
|
|
|
6fb079 |
/* newer style */
|
|
|
6fb079 |
+/* add_to_page_cache_locked removed per kernel commit f00654007fe1c15 */
|
|
|
6fb079 |
probe vfs.__add_to_page_cache =
|
|
|
6fb079 |
- kernel.function("add_to_page_cache_locked"),
|
|
|
6fb079 |
+ kernel.function("add_to_page_cache_locked") !,
|
|
|
6fb079 |
kernel.function("add_to_page_cache_lru")
|
|
|
6fb079 |
{ }
|
|
|
6fb079 |
|
|
|
6fb079 |
@@ -939,7 +943,7 @@ probe vfs.add_to_page_cache =
|
|
|
6fb079 |
|
|
|
6fb079 |
/* newer style */
|
|
|
6fb079 |
probe vfs.__add_to_page_cache.return =
|
|
|
6fb079 |
- kernel.function("add_to_page_cache_locked").return,
|
|
|
6fb079 |
+ kernel.function("add_to_page_cache_locked").return !,
|
|
|
6fb079 |
kernel.function("add_to_page_cache_lru").return
|
|
|
6fb079 |
{ }
|
|
|
6fb079 |
|
|
|
6fb079 |
@@ -958,7 +962,7 @@ probe vfs.add_to_page_cache.return =
|
|
|
6fb079 |
|
|
|
6fb079 |
probe vfs.remove_from_page_cache =
|
|
|
6fb079 |
kernel.function("__delete_from_page_cache") !,
|
|
|
6fb079 |
- kernel.function("__remove_from_page_cache")
|
|
|
6fb079 |
+ kernel.function("__remove_from_page_cache") ?
|
|
|
6fb079 |
{
|
|
|
6fb079 |
dev = __page_dev($page)
|
|
|
6fb079 |
devname = __find_bdevname(dev, __page_bdev($page))
|