Hello, kernel test robot noticed "WARNING:at_include/linux/pagemap.h:#split_huge_page_to_list" on: commit: 3f1c33c25c31221a7a27d302ce6aac8e9b71edbb ("[PATCH] mm/filemap: allocate folios according to the blocksize") url: https://github.com/intel-lab-lkp/linux/commits/Hannes-Reinecke/mm-filemap-allocate-folios-according-to-the-blocksize/20230414-215648 base: v6.3-rc6 patch link: https://lore.kernel.org/all/20230414134908.103932-1-hare@suse.de/ patch subject: [PATCH] mm/filemap: allocate folios according to the blocksize in testcase: xfstests version: xfstests-x86_64-a7df89e-1_20230410 with following parameters: disk: 4HDD fs: ext4 fs2: smbv3 test: generic-group-28 compiler: gcc-11 test machine: 8 threads Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz (Skylake) with 16G memory (please refer to attached dmesg/kmsg for entire log/backtrace) If you fix the issue, kindly add following tag | Reported-by: kernel test robot | Link: https://lore.kernel.org/oe-lkp/202304170945.28aa41a0-oliver.sang@intel.com [ 96.792002][ T3511] ------------[ cut here ]------------ [ 96.797305][ T3511] WARNING: CPU: 3 PID: 3511 at include/linux/pagemap.h:344 split_huge_page_to_list (include/linux/pagemap.h:344 mm/huge_memory.c:2767) [ 96.807438][ T3511] Modules linked in: loop cmac nls_utf8 cifs cifs_arc4 cifs_md4 dns_resolver dm_mod btrfs blake2b_generic xor intel_rapl_msr raid6_pq intel_rapl_common zstd_compress libcrc32c x86_pkg_temp_thermal intel_powerclamp coretemp sd_mod t10_pi kvm_intel crc64_rocksoft_generic i915 kvm crc64_rocksoft crc64 irqbypass crct10dif_pclmul sg crc32_pclmul ipmi_devintf crc32c_intel ipmi_msghandler drm_buddy ghash_clmulni_intel intel_gtt sha512_ssse3 drm_display_helper drm_kms_helper mei_wdt syscopyarea ahci rapl sysfillrect mei_me intel_cstate libahci sysimgblt wmi_bmof video intel_uncore serio_raw libata mei intel_pch_thermal ttm intel_pmc_core wmi acpi_pad tpm_infineon drm fuse ip_tables [ 96.868429][ T3511] CPU: 3 PID: 3511 Comm: xfs_io Not tainted 6.3.0-rc6-00001-g3f1c33c25c31 #1 [ 96.877009][ T3511] Hardware name: HP HP Z240 SFF Workstation/802E, BIOS N51 Ver. 01.63 10/05/2017 [ 96.885923][ T3511] RIP: 0010:split_huge_page_to_list (include/linux/pagemap.h:344 mm/huge_memory.c:2767) [ 96.891989][ T3511] Code: 89 f2 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 80 3c 02 00 0f 85 31 02 00 00 49 8b 84 24 98 00 00 00 a8 40 0f 85 f6 fe ff ff <0f> 0b e9 ef fe ff ff 81 e6 60 ec 0b 00 a9 00 00 04 00 44 0f 45 ee All code ======== 0: 89 f2 mov %esi,%edx 2: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 9: fc ff df c: 48 c1 ea 03 shr $0x3,%rdx 10: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1) 14: 0f 85 31 02 00 00 jne 0x24b 1a: 49 8b 84 24 98 00 00 mov 0x98(%r12),%rax 21: 00 22: a8 40 test $0x40,%al 24: 0f 85 f6 fe ff ff jne 0xffffffffffffff20 2a:* 0f 0b ud2 <-- trapping instruction 2c: e9 ef fe ff ff jmpq 0xffffffffffffff20 31: 81 e6 60 ec 0b 00 and $0xbec60,%esi 37: a9 00 00 04 00 test $0x40000,%eax 3c: 44 0f 45 ee cmovne %esi,%r13d Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: e9 ef fe ff ff jmpq 0xfffffffffffffef6 7: 81 e6 60 ec 0b 00 and $0xbec60,%esi d: a9 00 00 04 00 test $0x40000,%eax 12: 44 0f 45 ee cmovne %esi,%r13d [ 96.911358][ T3511] RSP: 0018:ffffc9000420f9d8 EFLAGS: 00010046 [ 96.917253][ T3511] RAX: 0000000000000000 RBX: 1ffff92000841f43 RCX: ffffffff8192f43e [ 96.925040][ T3511] RDX: 1ffff11084ce792a RSI: 0000000000000008 RDI: ffff88842673c950 [ 96.932836][ T3511] RBP: ffffea0005796700 R08: 0000000000000000 R09: ffff88842673c957 [ 96.940625][ T3511] R10: ffffed1084ce792a R11: 0000000000000001 R12: ffff88842673c8b8 [ 96.948419][ T3511] R13: 0000000000000000 R14: ffff88842673c950 R15: ffffea0005796700 [ 96.956211][ T3511] FS: 00007f83d8bdc800(0000) GS:ffff8883cf580000(0000) knlGS:0000000000000000 [ 96.964956][ T3511] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 96.971364][ T3511] CR2: 00007f83d8bdaef8 CR3: 000000013f57e006 CR4: 00000000003706e0 [ 96.979162][ T3511] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 96.986958][ T3511] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 96.994758][ T3511] Call Trace: [ 96.997888][ T3511] [ 97.000679][ T3511] ? can_split_folio (mm/huge_memory.c:2646) [ 97.005455][ T3511] ? __filemap_get_folio (arch/x86/include/asm/bitops.h:138 arch/x86/include/asm/bitops.h:144 include/asm-generic/bitops/instrumented-lock.h:58 include/linux/pagemap.h:915 include/linux/pagemap.h:951 mm/filemap.c:1936) [ 97.010578][ T3511] ? zero_user_segments (include/linux/highmem.h:282) [ 97.016651][ T3511] truncate_inode_partial_folio (mm/truncate.c:243) [ 97.022376][ T3511] truncate_inode_pages_range (mm/truncate.c:380) [ 97.027928][ T3511] ? folio_add_lru (arch/x86/include/asm/preempt.h:85 mm/swap.c:518) [ 97.032358][ T3511] ? truncate_inode_partial_folio (mm/truncate.c:332) [ 97.038261][ T3511] ? policy_node (include/linux/nodemask.h:266 mm/mempolicy.c:1869) [ 97.042604][ T3511] ? __cond_resched (kernel/sched/core.c:8489) [ 97.047115][ T3511] ? down_read (arch/x86/include/asm/atomic64_64.h:34 include/linux/atomic/atomic-long.h:41 include/linux/atomic/atomic-instrumented.h:1280 kernel/locking/rwsem.c:176 kernel/locking/rwsem.c:181 kernel/locking/rwsem.c:249 kernel/locking/rwsem.c:1249 kernel/locking/rwsem.c:1263 kernel/locking/rwsem.c:1522) [ 97.051372][ T3511] ? rwsem_down_read_slowpath (kernel/locking/rwsem.c:1518) [ 97.056924][ T3511] ? SMB2_set_eof (fs/cifs/smb2pdu.c:5197) cifs [ 97.062103][ T3511] ? up_read (arch/x86/include/asm/atomic64_64.h:160 include/linux/atomic/atomic-long.h:71 include/linux/atomic/atomic-instrumented.h:1318 kernel/locking/rwsem.c:1347 kernel/locking/rwsem.c:1616) [ 97.066015][ T3511] ? unmap_mapping_range (mm/memory.c:3541) [ 97.071051][ T3511] ? __do_fault (mm/memory.c:3541) [ 97.075387][ T3511] ? _raw_spin_lock (arch/x86/include/asm/atomic.h:202 include/linux/atomic/atomic-instrumented.h:543 include/asm-generic/qspinlock.h:111 include/linux/spinlock.h:186 include/linux/spinlock_api_smp.h:134 kernel/locking/spinlock.c:154) [ 97.079896][ T3511] ? __do_fault (mm/memory.c:3541) [ 97.084234][ T3511] ? zero_user_segments+0x19e/0x240 cifs [ 97.090958][ T3511] truncate_pagecache (mm/truncate.c:744) [ 97.095638][ T3511] smb3_simple_falloc+0xcbf/0x1840 cifs [ 97.101834][ T3511] ? smb3_fiemap (fs/cifs/smb2ops.c:3587) cifs [ 97.106919][ T3511] ? __do_sys_clone (kernel/fork.c:2812) [ 97.111433][ T3511] ? __do_sys_vfork (kernel/fork.c:2812) [ 97.115948][ T3511] vfs_fallocate (fs/open.c:324) [ 97.120381][ T3511] __x64_sys_fallocate (include/linux/file.h:44 fs/open.c:348 fs/open.c:355 fs/open.c:353 fs/open.c:353) [ 97.125238][ T3511] do_syscall_64 (arch/x86/entry/common.c:50 arch/x86/entry/common.c:80) [ 97.129490][ T3511] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:120) [ 97.135206][ T3511] RIP: 0033:0x7f83d8f5d647 [ 97.139454][ T3511] Code: 89 7c 24 08 48 89 4c 24 18 e8 55 07 f9 ff 4c 8b 54 24 18 48 8b 54 24 10 41 89 c0 8b 74 24 0c 8b 7c 24 08 b8 1d 01 00 00 0f 05 <48> 3d 00 f0 ff ff 77 31 44 89 c7 89 44 24 08 e8 85 07 f9 ff 8b 44 All code ======== 0: 89 7c 24 08 mov %edi,0x8(%rsp) 4: 48 89 4c 24 18 mov %rcx,0x18(%rsp) 9: e8 55 07 f9 ff callq 0xfffffffffff90763 e: 4c 8b 54 24 18 mov 0x18(%rsp),%r10 13: 48 8b 54 24 10 mov 0x10(%rsp),%rdx 18: 41 89 c0 mov %eax,%r8d 1b: 8b 74 24 0c mov 0xc(%rsp),%esi 1f: 8b 7c 24 08 mov 0x8(%rsp),%edi 23: b8 1d 01 00 00 mov $0x11d,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 31 ja 0x63 32: 44 89 c7 mov %r8d,%edi 35: 89 44 24 08 mov %eax,0x8(%rsp) 39: e8 85 07 f9 ff callq 0xfffffffffff907c3 3e: 8b .byte 0x8b 3f: 44 rex.R Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 31 ja 0x39 8: 44 89 c7 mov %r8d,%edi b: 89 44 24 08 mov %eax,0x8(%rsp) f: e8 85 07 f9 ff callq 0xfffffffffff90799 14: 8b .byte 0x8b 15: 44 rex.R [ 97.158825][ T3511] RSP: 002b:00007fffd0739670 EFLAGS: 00000293 ORIG_RAX: 000000000000011d [ 97.167058][ T3511] RAX: ffffffffffffffda RBX: 0000000000000002 RCX: 00007f83d8f5d647 [ 97.174858][ T3511] RDX: 00000000000003ff RSI: 0000000000000000 RDI: 0000000000000004 [ 97.182644][ T3511] RBP: 000055cbb600cf50 R08: 0000000000000000 R09: 0000000000000000 [ 97.190444][ T3511] R10: 0000000000000002 R11: 0000000000000293 R12: 000055cbb4968340 [ 97.198236][ T3511] R13: 0000000000000000 R14: 000055cbb600cf30 R15: 000055cbb600cf50 [ 97.206035][ T3511] [ 97.208906][ T3511] ---[ end trace 0000000000000000 ]--- [ 97.331260][ T292] generic/568 _check_dmesg: something found in dmesg (see /lkp/benchmarks/xfstests/results//generic/568.dmesg) [ 97.331271][ T292] To reproduce: git clone https://github.com/intel/lkp-tests.git cd lkp-tests sudo bin/lkp install job.yaml # job file is attached in this email bin/lkp split-job --compatible job.yaml # generate the yaml file for lkp run sudo bin/lkp run generated-yaml-file # if come across any failure that blocks the test, # please remove ~/.lkp and /lkp dir to run from a clean state. -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests