[Bug 216639] [xfstests] WARNING: CPU: 1 PID: 429349 at mm/huge_memory.c:2465 __split_huge_page_tail+0xab0/0xce0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

--- Comment #2 from Dave Chinner (david@xxxxxxxxxxxxx) ---
On Sun, Oct 30, 2022 at 02:38:17AM +0000, bugzilla-daemon@xxxxxxxxxx wrote:
> Many xfstests cases fail [1] and hit below kernel
> (HEAD=05c31d25cc9678cc173cf12e259d638e8a641f66) warning [2] (on x86_64 and
> s390x). No special mkfs or mount options, just simple default xfs testing,
> without any MKFS_OPTIONS or MOUNT_OPTIONS specified.
> 
> [1]
> FSTYP         -- xfs (debug)
> PLATFORM      -- Linux/x86_64 hp-xxxxxx-xx-xxxx 6.1.0-rc2+ #1 SMP
> PREEMPT_DYNAMIC Fri Oct 28 19:52:51 EDT 2022
> MKFS_OPTIONS  -- -f -m
> crc=1,finobt=1,rmapbt=0,reflink=1,bigtime=1,inobtcount=1
> /dev/vda2
> MOUNT_OPTIONS -- -o context=system_u:object_r:root_t:s0 /dev/vda2
> /mnt/xfstests/scratch
> 
> generic/061       _check_dmesg: something found in dmesg (see
> /var/lib/xfstests/results//generic/061.dmesg)
> 
> Ran: generic/061
> Failures: generic/061
> Failed 1 of 1 tests
> 
> [2]
> [14281.743118] run fstests generic/061 at 2022-10-29 01:00:39
> [14295.930483] page:000000001065a86b refcount:0 mapcount:0
> mapping:0000000064faa2f2 index:0x40 pfn:0x143040
> [14295.947825] head:000000001065a86b order:5 compound_mapcount:0
> compound_pincount:0
> [14295.950100] memcg:ffff88817efe2000
> [14295.951215] aops:xfs_address_space_operations [xfs] ino:8e dentry
> name:"061.429109"
> [14295.955474] flags:
> 0x17ffffc0010035(locked|uptodate|lru|active|head|node=0|zone=2|lastcpupid=0x1fffff)
> [14295.958302] raw: 0017ffffc0010035 ffffea0004756c08 ffffea00050c1788
> ffff88811e804448
> [14295.960624] raw: 0000000000000040 0000000000000000 00000000ffffffff
> ffff88817efe2000
> [14295.962927] page dumped because: VM_WARN_ON_ONCE_PAGE(page_tail->private
> != 0)
> [14295.965744] ------------[ cut here ]------------
> [14295.967201] WARNING: CPU: 1 PID: 429349 at mm/huge_memory.c:2465
> __split_huge_page_tail+0xab0/0xce0
....
> [14296.015290] Call Trace:
> [14296.016083]  <TASK>
> [14296.018235]  __split_huge_page+0x2a5/0x11b0
> [14296.019675]  split_huge_page_to_list+0xb13/0xf30
> [14296.027369]  truncate_inode_partial_folio+0x1d9/0x370
> [14296.028940]  truncate_inode_pages_range+0x350/0xbc0
> [14296.059204]  truncate_pagecache+0x63/0x90
> [14296.060471]  xfs_setattr_size+0x2a2/0xc50 [xfs]

Yup, splitting a multi-page folio during truncate. Looks like this
has already been fixed in the Linus kernel by commit 5aae9265ee1a
("mm: prep_compound_tail() clear page->private") here:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=5aae9265ee1a30cf716d6caf6b29fe99b9d55130

It was merged after your currrent head commit...

This won't reproduce on ext4 because it doesn't use multi-page
folios in the page cache.

Cheers,

Dave.

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

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



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux