https://bugzilla.kernel.org/show_bug.cgi?id=220575

--- Comment #4 from JY ([email protected]) ---
(In reply to Chao Yu from comment #3)
> I meant using trace32 to dump field value of victim page, something like
> that. :)

For some reasons, I can't dump the victim page with trace32.
So I'm using 'page_owner' and add new member '_private' to the struct page.
I Modified the function 'set_page_private()' in include/linux/mm_types.h
static inline void set_page_private(...)
{
        page->private = private;
+       if (!private)
+               page->_private = private;
}

also modified the function 'f2fs_is_cp_guaranteed'
bool f2fs_is_cp_guaranteed(const struct page *page)
{
        struct address_space *mapping = page->mapping;
        struct inode *inode;
        struct f2fs_sb_info *sbi;

        if (fscrypt_is_bounce_page(page)) {
+               pr_crit("bounced_page:0xpx, pp:0x%px,
fscrypt_pagecache_page(page):0x%px\n", page, page->_private,
fscrypt_pagecache_page(page));
+               if (page->_private)
+                       dump_page(page->_private, "dump _private page");
+               else
+                       dump_page(page, "dump bounce page");
                return page_private_gcing(fscrypt_pagecache_page(page));
}

And I got the log as below:

[2025-09-23 12:54:07.401] [ 2223.580361][T18170]
bounced_page:0xfffffffe82282290, pp:0x0000000000000000,
fscrypt_pagecache_page(page):0x0000000000000000

[2025-09-23 12:54:07.522] [ 2223.636124][T18170] page: refcount:1 mapcount:0
mapping:0000000000000000 index:0xc02b7 pfn:0x6e6d5

[2025-09-23 12:54:07.577] [ 2223.656779][T18170] flags: 0x0(zone=0)

[2025-09-23 12:54:07.577] [ 2223.665281][T18170] page_type: f2(table)

[2025-09-23 12:54:07.577] [ 2223.673618][T18170] raw: 0000000000000000
0000000000000000 0000000000000000 0000000000000000

[2025-09-23 12:54:07.577] [ 2223.691017][T18170] raw: 00000000000c02b7
0000000000000000 00000001f2000000 0000000000000000

[2025-09-23 12:54:07.577] [ 2223.709638][T18170] raw: 0000000000000000
0000000000000000

[2025-09-23 12:54:07.633] [ 2223.734520][T18170] page_owner tracks the page as
allocated

[2025-09-23 12:54:07.633] [ 2223.740836][T18170] page last allocated via order
0, migratetype Unmovable, gfp_mask
0x540dc0(GFP_USER|__GFP_COMP|__GFP_ZERO|__GFP_ACCOUNT), pid 23744, tgid 23744
(sync), ts 2223627020157, free_ts 2223626903324

[2025-09-23 12:54:07.690] [ 2223.760701][T18170]  post_alloc_hook+0x1d4/0x1ec

[2025-09-23 12:54:07.690] [ 2223.765688][T18170]  prep_new_page+0x30/0x154

[2025-09-23 12:54:07.690] [ 2223.770483][T18170] 
get_page_from_freelist+0x11e8/0x127c

[2025-09-23 12:54:07.690] [ 2223.776402][T18170] 
__alloc_pages_noprof+0x1b0/0x448

[2025-09-23 12:54:07.690] [ 2223.781758][T18170] 
pmd_alloc_one_noprof+0x40/0x110

[2025-09-23 12:54:07.690] [ 2223.787714][T18170]  __pmd_alloc+0x34/0x1a8

[2025-09-23 12:54:07.690] [ 2223.792274][T18170]  move_page_tables+0x868/0x928

[2025-09-23 12:54:07.690] [ 2223.797303][T18170]  relocate_vma_down+0x118/0x1f8

[2025-09-23 12:54:07.690] [ 2223.802601][T18170]  setup_arg_pages+0x204/0x33c

[2025-09-23 12:54:07.690] [ 2223.807480][T18170]  load_elf_binary+0x4f0/0xd68

[2025-09-23 12:54:07.690] [ 2223.822457][T18170]  bprm_execve+0x2c8/0x57c

[2025-09-23 12:54:07.745] [ 2223.827615][T18170] 
do_execveat_common+0x26c/0x2c4

[2025-09-23 12:54:07.745] [ 2223.832943][T18170] 
__arm64_compat_sys_execve+0x48/0x60

[2025-09-23 12:54:07.745] [ 2223.839441][T18170]  invoke_syscall+0x60/0x114

[2025-09-23 12:54:07.745] [ 2223.844123][T18170]  el0_svc_common+0xb0/0xe4

[2025-09-23 12:54:07.745] [ 2223.850297][T18170]  do_el0_svc_compat+0x24/0x30

[2025-09-23 12:54:07.745] [ 2223.856538][T18170] page last free pid 23744 tgid
23744 stack trace:

[2025-09-23 12:54:07.745] [ 2223.865252][T18170]  free_unref_page+0x828/0x978

[2025-09-23 12:54:07.801] [ 2223.870493][T18170]  __free_pages+0xe4/0x238

[2025-09-23 12:54:07.801] [ 2223.875113][T18170]  free_pages+0x80/0x9c

[2025-09-23 12:54:07.801] [ 2223.879228][T18170]  pgd_free+0x20/0x30

[2025-09-23 12:54:07.801] [ 2223.883162][T18170]  __mmdrop+0x54/0x168

[2025-09-23 12:54:07.801] [ 2223.887624][T18170]  __mmput+0x14c/0x170

[2025-09-23 12:54:07.801] [ 2223.891790][T18170]  mmput+0x38/0xd8

[2025-09-23 12:54:07.801] [ 2223.895457][T18170]  exec_mmap+0x1c4/0x238

[2025-09-23 12:54:07.801] [ 2223.899907][T18170]  begin_new_exec+0x3cc/0x654

[2025-09-23 12:54:07.801] [ 2223.905047][T18170]  load_elf_binary+0x39c/0xd68

[2025-09-23 12:54:07.801] [ 2223.909934][T18170]  bprm_execve+0x2c8/0x57c

[2025-09-23 12:54:07.801] [ 2223.914547][T18170] 
do_execveat_common+0x26c/0x2c4

[2025-09-23 12:54:07.801] [ 2223.919902][T18170] 
__arm64_compat_sys_execve+0x48/0x60

[2025-09-23 12:54:07.861] [ 2223.925625][T18170]  invoke_syscall+0x60/0x114

[2025-09-23 12:54:07.861] [ 2223.930483][T18170]  el0_svc_common+0xb0/0xe4

[2025-09-23 12:54:07.861] [ 2223.935095][T18170]  do_el0_svc_compat+0x24/0x30

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to