Syz Test if issue still reproduce

Shivank Garg posted 1 patch 9 months, 1 week ago
Syz Test if issue still reproduce
Posted by Shivank Garg 9 months, 1 week ago
Hi,

Testing if this issue https://syzkaller.appspot.com/bug?extid=8bb6fd945af4e0ad9299
still reproduces


#syz test: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git 33035b665

diff --git a/fs/jfs/jfs_metapage.c b/fs/jfs/jfs_metapage.c
index df575a873ec6..f863ba521533 100644
--- a/fs/jfs/jfs_metapage.c
+++ b/fs/jfs/jfs_metapage.c
@@ -15,6 +15,7 @@
 #include <linux/mempool.h>
 #include <linux/seq_file.h>
 #include <linux/writeback.h>
+#include <linux/migrate.h>
 #include "jfs_incore.h"
 #include "jfs_superblock.h"
 #include "jfs_filsys.h"
@@ -151,6 +152,54 @@ static inline void dec_io(struct folio *folio, blk_status_t status,
 		handler(folio, anchor->status);
 }
 
+static int __metapage_migrate_folio(struct address_space *mapping, struct folio *dst,
+				    struct folio *src, enum migrate_mode mode)
+{
+	struct meta_anchor *src_anchor = src->private;
+	struct metapage *mps[MPS_PER_PAGE] = {0};
+	struct metapage *mp;
+	int i, rc;
+
+	for (i = 0; i < MPS_PER_PAGE; i++) {
+		mp = src_anchor->mp[i];
+		if (mp && metapage_locked(mp))
+			return -EAGAIN;
+	}
+
+	rc = filemap_migrate_folio(mapping, dst, src, mode);
+	if (rc != MIGRATEPAGE_SUCCESS)
+		return rc;
+
+	for (i = 0; i < MPS_PER_PAGE; i++) {
+		mp = src_anchor->mp[i];
+		if (!mp)
+			continue;
+		if (unlikely(insert_metapage(dst, mp))) {
+			/* If error, roll-back previosly inserted pages */
+			for (int j = 0 ; j < i; j++) {
+				if (mps[j])
+					remove_metapage(dst, mps[j]);
+			}
+			return -EAGAIN;
+		}
+		mps[i] = mp;
+	}
+
+	/* Update the metapage and remove it from src */
+	for (i = 0; i < MPS_PER_PAGE; i++) {
+		mp = mps[i];
+		if (mp) {
+			int page_offset = mp->data - folio_address(src);
+
+			mp->data = folio_address(dst) + page_offset;
+			mp->folio = dst;
+			remove_metapage(src, mp);
+		}
+	}
+
+	return MIGRATEPAGE_SUCCESS;
+}
+
 #else
 static inline struct metapage *folio_to_mp(struct folio *folio, int offset)
 {
@@ -175,6 +224,32 @@ static inline void remove_metapage(struct folio *folio, struct metapage *mp)
 #define inc_io(folio) do {} while(0)
 #define dec_io(folio, status, handler) handler(folio, status)
 
+static int __metapage_migrate_folio(struct address_space *mapping, struct folio *dst,
+				    struct folio *src, enum migrate_mode mode)
+{
+	struct metapage *mp;
+	int page_offset;
+	int rc;
+
+	mp = folio_to_mp(src, 0);
+	if (mp && metapage_locked(mp))
+		return -EAGAIN;
+
+	rc = filemap_migrate_folio(mapping, dst, src, mode);
+	if (rc != MIGRATEPAGE_SUCCESS)
+		return rc;
+
+	if (unlikely(insert_metapage(dst, mp)))
+		return -EAGAIN;
+
+	page_offset = mp->data - folio_address(src);
+	mp->data = folio_address(dst) + page_offset;
+	mp->folio = dst;
+	remove_metapage(src, mp);
+
+	return MIGRATEPAGE_SUCCESS;
+}
+
 #endif
 
 static inline struct metapage *alloc_metapage(gfp_t gfp_mask)
@@ -554,6 +629,24 @@ static bool metapage_release_folio(struct folio *folio, gfp_t gfp_mask)
 	return ret;
 }
 
+/**
+ * metapage_migrate_folio - Migration function for JFS metapages
+ */
+static int metapage_migrate_folio(struct address_space *mapping, struct folio *dst,
+				  struct folio *src, enum migrate_mode mode)
+{
+	int expected_count;
+
+	if (!src->private)
+		return filemap_migrate_folio(mapping, dst, src, mode);
+
+	/* Check whether page does not have extra refs before we do more work */
+	expected_count = folio_expected_ref_count(src) + 1;
+	if (folio_ref_count(src) != expected_count)
+		return -EAGAIN;
+	return __metapage_migrate_folio(mapping, dst, src, mode);
+}
+
 static void metapage_invalidate_folio(struct folio *folio, size_t offset,
 				    size_t length)
 {
@@ -570,6 +663,7 @@ const struct address_space_operations jfs_metapage_aops = {
 	.release_folio	= metapage_release_folio,
 	.invalidate_folio = metapage_invalidate_folio,
 	.dirty_folio	= filemap_dirty_folio,
+	.migrate_folio	= metapage_migrate_folio,
 };
 
 struct metapage *__get_metapage(struct inode *inode, unsigned long lblock,
diff --git a/include/linux/mm.h b/include/linux/mm.h
index 68d3dd14b323..1db540bb9381 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -2115,6 +2115,61 @@ static inline bool folio_maybe_mapped_shared(struct folio *folio)
 	return folio_test_large_maybe_mapped_shared(folio);
 }
 
+/**
+ * folio_expected_ref_count - calculate the expected folio refcount
+ * @folio: the folio
+ *
+ * Calculate the expected folio refcount, taking references from the pagecache,
+ * swapcache, PG_private and page table mappings into account. Useful in
+ * combination with folio_ref_count() to detect unexpected references (e.g.,
+ * GUP or other temporary references).
+ *
+ * Does currently not consider references from the LRU cache. If the folio
+ * was isolated from the LRU (which is the case during migration or split),
+ * the LRU cache does not apply.
+ *
+ * Calling this function on an unmapped folio -- !folio_mapped() -- that is
+ * locked will return a stable result.
+ *
+ * Calling this function on a mapped folio will not result in a stable result,
+ * because nothing stops additional page table mappings from coming (e.g.,
+ * fork()) or going (e.g., munmap()).
+ *
+ * Calling this function without the folio lock will also not result in a
+ * stable result: for example, the folio might get dropped from the swapcache
+ * concurrently.
+ *
+ * However, even when called without the folio lock or on a mapped folio,
+ * this function can be used to detect unexpected references early (for example,
+ * if it makes sense to even lock the folio and unmap it).
+ *
+ * The caller must add any reference (e.g., from folio_try_get()) it might be
+ * holding itself to the result.
+ *
+ * Returns the expected folio refcount.
+ */
+static inline int folio_expected_ref_count(const struct folio *folio)
+{
+	const int order = folio_order(folio);
+	int ref_count = 0;
+
+	if (WARN_ON_ONCE(folio_test_slab(folio)))
+		return 0;
+
+	if (folio_test_anon(folio)) {
+		/* One reference per page from the swapcache. */
+		ref_count += folio_test_swapcache(folio) << order;
+	} else if (!((unsigned long)folio->mapping & PAGE_MAPPING_FLAGS)) {
+		/* One reference per page from the pagecache. */
+		ref_count += !!folio->mapping << order;
+		/* One reference from PG_private. */
+		ref_count += folio_test_private(folio);
+	}
+
+	/* One reference per page table mapping. */
+	return ref_count + folio_mapcount(folio);
+}
+
 #ifndef HAVE_ARCH_MAKE_FOLIO_ACCESSIBLE
 static inline int arch_make_folio_accessible(struct folio *folio)
 {
diff --git a/mm/migrate.c b/mm/migrate.c
index c80591514e66..67f2bf1eb51e 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -445,20 +445,6 @@ void pmd_migration_entry_wait(struct mm_struct *mm, pmd_t *pmd)
 }
 #endif
 
-static int folio_expected_refs(struct address_space *mapping,
-		struct folio *folio)
-{
-	int refs = 1;
-	if (!mapping)
-		return refs;
-
-	refs += folio_nr_pages(folio);
-	if (folio_test_private(folio))
-		refs++;
-
-	return refs;
-}
-
 /*
  * Replace the folio in the mapping.
  *
@@ -601,7 +587,7 @@ static int __folio_migrate_mapping(struct address_space *mapping,
 int folio_migrate_mapping(struct address_space *mapping,
 		struct folio *newfolio, struct folio *folio, int extra_count)
 {
-	int expected_count = folio_expected_refs(mapping, folio) + extra_count;
+	int expected_count = folio_expected_ref_count(folio) + extra_count + 1;
 
 	if (folio_ref_count(folio) != expected_count)
 		return -EAGAIN;
@@ -618,7 +604,7 @@ int migrate_huge_page_move_mapping(struct address_space *mapping,
 				   struct folio *dst, struct folio *src)
 {
 	XA_STATE(xas, &mapping->i_pages, folio_index(src));
-	int rc, expected_count = folio_expected_refs(mapping, src);
+	int rc, expected_count = folio_expected_ref_count(src) + 1;
 
 	if (folio_ref_count(src) != expected_count)
 		return -EAGAIN;
@@ -749,7 +735,7 @@ static int __migrate_folio(struct address_space *mapping, struct folio *dst,
 			   struct folio *src, void *src_private,
 			   enum migrate_mode mode)
 {
-	int rc, expected_count = folio_expected_refs(mapping, src);
+	int rc, expected_count = folio_expected_ref_count(src) + 1;
 
 	/* Check whether src does not have extra refs before we do more work */
 	if (folio_ref_count(src) != expected_count)
@@ -837,7 +823,7 @@ static int __buffer_migrate_folio(struct address_space *mapping,
 		return migrate_folio(mapping, dst, src, mode);
 
 	/* Check whether page does not have extra refs before we do more work */
-	expected_count = folio_expected_refs(mapping, src);
+	expected_count = folio_expected_ref_count(src) + 1;
 	if (folio_ref_count(src) != expected_count)
 		return -EAGAIN;
Re: [syzbot] [mm?] WARNING in move_to_new_folio
Posted by syzbot 9 months, 1 week ago
Hello,

syzbot tried to test the proposed patch but the build/boot failed:

ed.
[    1.681174][    T0] 	Tracing variant of Tasks RCU enabled.
[    1.681902][    T0] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    1.683059][    T0] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    1.684680][    T0] Running RCU synchronous self tests
[    1.685620][    T0] RCU Tasks: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
[    1.686925][    T0] RCU Tasks Trace: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
[    1.823163][    T0] NR_IRQS: 4352, nr_irqs: 440, preallocated irqs: 16
[    1.825139][    T0] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    1.826579][    T0] kfence: initialized - using 2097152 bytes for 255 objects at 0xffff88823be00000-0xffff88823c000000
[    1.829232][    T0] Console: colour VGA+ 80x25
[    1.829978][    T0] printk: legacy console [ttyS0] enabled
[    1.829978][    T0] printk: legacy console [ttyS0] enabled
[    1.831736][    T0] printk: legacy bootconsole [earlyser0] disabled
[    1.831736][    T0] printk: legacy bootconsole [earlyser0] disabled
[    1.833514][    T0] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
[    1.834681][    T0] ... MAX_LOCKDEP_SUBCLASSES:  8
[    1.835518][    T0] ... MAX_LOCK_DEPTH:          48
[    1.836336][    T0] ... MAX_LOCKDEP_KEYS:        8192
[    1.837124][    T0] ... CLASSHASH_SIZE:          4096
[    1.838035][    T0] ... MAX_LOCKDEP_ENTRIES:     1048576
[    1.838801][    T0] ... MAX_LOCKDEP_CHAINS:      1048576
[    1.839561][    T0] ... CHAINHASH_SIZE:          524288
[    1.840423][    T0]  memory used by lock dependency info: 106625 kB
[    1.841405][    T0]  memory used for stack traces: 8320 kB
[    1.842304][    T0]  per task-struct memory footprint: 1920 bytes
[    1.843565][    T0] mempolicy: Enabling automatic NUMA balancing. Configure with numa_balancing= or the kernel.numa_balancing sysctl
[    1.845316][    T0] ACPI: Core revision 20241212
[    1.846971][    T0] APIC: Switch to symmetric I/O mode setup
[    1.848285][    T0] x2apic enabled
[    1.852223][    T0] APIC: Switched APIC routing to: physical x2apic
[    1.859089][    T0] ..TIMER: vector=0x30 apic1=0 pin1=0 apic2=-1 pin2=-1
[    1.860641][    T0] clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x1fb6f3811e0, max_idle_ns: 440795202126 ns
[    1.862247][    T0] Calibrating delay loop (skipped) preset value.. 4400.40 BogoMIPS (lpj=22002040)
[    1.864112][    T0] Last level iTLB entries: 4KB 64, 2MB 8, 4MB 8
[    1.865179][    T0] Last level dTLB entries: 4KB 64, 2MB 32, 4MB 32, 1GB 4
[    1.866500][    T0] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization
[    1.872389][    T0] Spectre V2 : Spectre BHI mitigation: SW BHB clearing on syscall and VM exit
[    1.874070][    T0] Spectre V2 : Mitigation: IBRS
[    1.875161][    T0] Spectre V2 : Spectre v2 / SpectreRSB: Filling RSB on context switch and VMEXIT
[    1.876856][    T0] RETBleed: Mitigation: IBRS
[    1.878026][    T0] Spectre V2 : mitigation: Enabling conditional Indirect Branch Prediction Barrier
[    1.879710][    T0] Spectre V2 : User space: Mitigation: STIBP via prctl
[    1.882307][    T0] Speculative Store Bypass: Mitigation: Speculative Store Bypass disabled via prctl
[    1.883734][    T0] MDS: Mitigation: Clear CPU buffers
[    1.884454][    T0] TAA: Mitigation: Clear CPU buffers
[    1.885363][    T0] MMIO Stale Data: Vulnerable: Clear CPU buffers attempted, no microcode
[    1.886952][    T0] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[    1.888547][    T0] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[    1.889823][    T0] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[    1.890929][    T0] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
[    1.892240][    T0] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.
[    2.193671][    T0] Freeing SMP alternatives memory: 132K
[    2.194604][    T0] pid_max: default: 32768 minimum: 301
[    2.196277][    T0] LSM: initializing lsm=lockdown,capability,landlock,yama,safesetid,tomoyo,apparmor,bpf,ima,evm
[    2.198299][    T0] landlock: Up and running.
[    2.198925][    T0] Yama: becoming mindful.
[    2.199858][    T0] TOMOYO Linux initialized
[    2.201374][    T0] AppArmor: AppArmor initialized
[    2.203589][    T0] LSM support for eBPF active
[    2.210200][    T0] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes, vmalloc hugepage)
[    2.214840][    T0] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes, vmalloc hugepage)
[    2.216675][    T0] Mount-cache hash table entries: 16384 (order: 5, 131072 bytes, vmalloc)
[    2.218347][    T0] Mountpoint-cache hash table entries: 16384 (order: 5, 131072 bytes, vmalloc)
[    2.224475][    T0] Running RCU synchronous self tests
[    2.225441][    T0] Running RCU synchronous self tests
[    2.347377][    T1] smpboot: CPU0: Intel(R) Xeon(R) CPU @ 2.20GHz (family: 0x6, model: 0x4f, stepping: 0x0)
[    2.351817][    T9] ------------[ cut here ]------------
[    2.352232][    T9] WARNING: CPU: 0 PID: 9 at arch/x86/mm/tlb.c:919 switch_mm_irqs_off+0x640/0x7c0
[    2.352232][    T9] Modules linked in:
[    2.352232][    T9] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.15.0-rc4-next-20250428-syzkaller-dirty #0 PREEMPT(full) 
[    2.352232][    T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
[    2.352232][    T9] Workqueue: events once_deferred
[    2.352232][    T9] RIP: 0010:switch_mm_irqs_off+0x640/0x7c0
[    2.352232][    T9] Code: 84 f4 fa ff ff 90 0f 0b 90 e9 eb fa ff ff 90 0f 0b 90 e9 84 fe ff ff 90 0f 0b 90 e9 18 fc ff ff 90 0f 0b 90 e9 cb fb ff ff 90 <0f> 0b 90 e9 df fb ff ff 89 c8 90 0f 0b 90 e9 3f fd ff ff 90 0f 0b
[    2.352232][    T9] RSP: 0000:ffffc900000e7720 EFLAGS: 00010056
[    2.352232][    T9] RAX: 0000000000000001 RBX: ffff88801a070940 RCX: ffffffff8173b01d
[    2.352232][    T9] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88801a070940
[    2.352232][    T9] RBP: ffffc900000e77f0 R08: ffff88801a070947 R09: 1ffff1100340e128
[    2.352232][    T9] R10: dffffc0000000000 R11: ffffed100340e129 R12: 1ffff110037d70ab
[    2.352232][    T9] R13: ffffffff8e0467c0 R14: ffff88801beb8000 R15: 0000000000000000
[    2.352232][    T9] FS:  0000000000000000(0000) GS:ffff8881260a1000(0000) knlGS:0000000000000000
[    2.352232][    T9] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    2.352232][    T9] CR2: ffff88823ffff000 CR3: 000000001a078000 CR4: 00000000003506f0
[    2.352232][    T9] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[    2.352232][    T9] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[    2.352232][    T9] Call Trace:
[    2.352232][    T9]  <TASK>
[    2.352232][    T9]  ? __pfx_switch_mm_irqs_off+0x10/0x10
[    2.352232][    T9]  ? __text_poke+0x5a4/0x980
[    2.352232][    T9]  ? kasan_check_range+0x29a/0x2b0
[    2.352232][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
[    2.352232][    T9]  unuse_temporary_mm+0x9d/0x100
[    2.352232][    T9]  __text_poke+0x634/0x980
[    2.352232][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
[    2.352232][    T9]  ? __pfx_text_poke_memcpy+0x10/0x10
[    2.352232][    T9]  ? __pfx___text_poke+0x10/0x10
[    2.352232][    T9]  ? rcu_is_watching+0x15/0xb0
[    2.352232][    T9]  ? trace_contention_end+0x39/0x120
[    2.352232][    T9]  smp_text_poke_batch_finish+0x38c/0x1100
[    2.352232][    T9]  ? __pfx___mutex_lock+0x10/0x10
[    2.352232][    T9]  ? __pfx_smp_text_poke_batch_finish+0x10/0x10
[    2.352232][    T9]  ? arch_jump_label_transform_queue+0x97/0x110
[    2.352232][    T9]  ? __jump_label_update+0x37e/0x3a0
[    2.352232][    T9]  arch_jump_label_transform_apply+0x1c/0x30
[    2.352232][    T9]  static_key_disable_cpuslocked+0xc5/0x1b0
[    2.352232][    T9]  static_key_disable+0x1a/0x20
[    2.352232][    T9]  once_deferred+0x6f/0xb0
[    2.352232][    T9]  ? process_scheduled_works+0x9ef/0x17b0
[    2.352232][    T9]  process_scheduled_works+0xade/0x17b0
[    2.352232][    T9]  ? __pfx_process_scheduled_works+0x10/0x10
[    2.352232][    T9]  worker_thread+0x8a0/0xda0
[    2.352232][    T9]  kthread+0x70e/0x8a0
[    2.352232][    T9]  ? __pfx_worker_thread+0x10/0x10
[    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
[    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
[    2.352232][    T9]  ? _raw_spin_unlock_irq+0x23/0x50
[    2.352232][    T9]  ? lockdep_hardirqs_on+0x9c/0x150
[    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
[    2.352232][    T9]  ret_from_fork+0x4b/0x80
[    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
[    2.352232][    T9]  ret_from_fork_asm+0x1a/0x30
[    2.352232][    T9]  </TASK>
[    2.352232][    T9] Kernel panic - not syncing: kernel: panic_on_warn set ...
[    2.352232][    T9] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.15.0-rc4-next-20250428-syzkaller-dirty #0 PREEMPT(full) 
[    2.352232][    T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
[    2.352232][    T9] Workqueue: events once_deferred
[    2.352232][    T9] Call Trace:
[    2.352232][    T9]  <TASK>
[    2.352232][    T9]  dump_stack_lvl+0x99/0x250
[    2.352232][    T9]  ? __asan_memcpy+0x40/0x70
[    2.352232][    T9]  ? __pfx_dump_stack_lvl+0x10/0x10
[    2.352232][    T9]  ? __pfx__printk+0x10/0x10
[    2.352232][    T9]  panic+0x2db/0x790
[    2.352232][    T9]  ? __pfx_panic+0x10/0x10
[    2.352232][    T9]  ? show_trace_log_lvl+0x4fb/0x550
[    2.352232][    T9]  ? ret_from_fork_asm+0x1a/0x30
[    2.352232][    T9]  __warn+0x31b/0x4b0
[    2.352232][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
[    2.352232][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
[    2.352232][    T9]  report_bug+0x2be/0x4f0
[    2.352232][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
[    2.352232][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
[    2.352232][    T9]  ? switch_mm_irqs_off+0x642/0x7c0
[    2.352232][    T9]  handle_bug+0x84/0x160
[    2.352232][    T9]  exc_invalid_op+0x1a/0x50
[    2.352232][    T9]  asm_exc_invalid_op+0x1a/0x20
[    2.352232][    T9] RIP: 0010:switch_mm_irqs_off+0x640/0x7c0
[    2.352232][    T9] Code: 84 f4 fa ff ff 90 0f 0b 90 e9 eb fa ff ff 90 0f 0b 90 e9 84 fe ff ff 90 0f 0b 90 e9 18 fc ff ff 90 0f 0b 90 e9 cb fb ff ff 90 <0f> 0b 90 e9 df fb ff ff 89 c8 90 0f 0b 90 e9 3f fd ff ff 90 0f 0b
[    2.352232][    T9] RSP: 0000:ffffc900000e7720 EFLAGS: 00010056
[    2.352232][    T9] RAX: 0000000000000001 RBX: ffff88801a070940 RCX: ffffffff8173b01d
[    2.352232][    T9] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88801a070940
[    2.352232][    T9] RBP: ffffc900000e77f0 R08: ffff88801a070947 R09: 1ffff1100340e128
[    2.352232][    T9] R10: dffffc0000000000 R11: ffffed100340e129 R12: 1ffff110037d70ab
[    2.352232][    T9] R13: ffffffff8e0467c0 R14: ffff88801beb8000 R15: 0000000000000000
[    2.352232][    T9]  ? switch_mm_irqs_off+0x21d/0x7c0
[    2.352232][    T9]  ? __pfx_switch_mm_irqs_off+0x10/0x10
[    2.352232][    T9]  ? __text_poke+0x5a4/0x980
[    2.352232][    T9]  ? kasan_check_range+0x29a/0x2b0
[    2.352232][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
[    2.352232][    T9]  unuse_temporary_mm+0x9d/0x100
[    2.352232][    T9]  __text_poke+0x634/0x980
[    2.352232][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
[    2.352232][    T9]  ? __pfx_text_poke_memcpy+0x10/0x10
[    2.352232][    T9]  ? __pfx___text_poke+0x10/0x10
[    2.352232][    T9]  ? rcu_is_watching+0x15/0xb0
[    2.352232][    T9]  ? trace_contention_end+0x39/0x120
[    2.352232][    T9]  smp_text_poke_batch_finish+0x38c/0x1100
[    2.352232][    T9]  ? __pfx___mutex_lock+0x10/0x10
[    2.352232][    T9]  ? __pfx_smp_text_poke_batch_finish+0x10/0x10
[    2.352232][    T9]  ? arch_jump_label_transform_queue+0x97/0x110
[    2.352232][    T9]  ? __jump_label_update+0x37e/0x3a0
[    2.352232][    T9]  arch_jump_label_transform_apply+0x1c/0x30
[    2.352232][    T9]  static_key_disable_cpuslocked+0xc5/0x1b0
[    2.352232][    T9]  static_key_disable+0x1a/0x20
[    2.352232][    T9]  once_deferred+0x6f/0xb0
[    2.352232][    T9]  ? process_scheduled_works+0x9ef/0x17b0
[    2.352232][    T9]  process_scheduled_works+0xade/0x17b0
[    2.352232][    T9]  ? __pfx_process_scheduled_works+0x10/0x10
[    2.352232][    T9]  worker_thread+0x8a0/0xda0
[    2.352232][    T9]  kthread+0x70e/0x8a0
[    2.352232][    T9]  ? __pfx_worker_thread+0x10/0x10
[    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
[    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
[    2.352232][    T9]  ? _raw_spin_unlock_irq+0x23/0x50
[    2.352232][    T9]  ? lockdep_hardirqs_on+0x9c/0x150
[    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
[    2.352232][    T9]  ret_from_fork+0x4b/0x80
[    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
[    2.352232][    T9]  ret_from_fork_asm+0x1a/0x30
[    2.352232][    T9]  </TASK>
[    2.352232][    T9] Rebooting in 86400 seconds..


syzkaller build log:
go env (err=<nil>)
GO111MODULE='auto'
GOARCH='amd64'
GOBIN=''
GOCACHE='/syzkaller/.cache/go-build'
GOENV='/syzkaller/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/syzkaller/jobs-2/linux/gopath/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/syzkaller/jobs-2/linux/gopath'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/syzkaller/jobs-2/linux/gopath/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.7.linux-amd64'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/syzkaller/jobs-2/linux/gopath/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.7.linux-amd64/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.23.7'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/syzkaller/.config/go/telemetry'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/syzkaller/jobs-2/linux/gopath/src/github.com/google/syzkaller/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1284445660=/tmp/go-build -gno-record-gcc-switches'

git status (err=<nil>)
HEAD detached at 0bd6db4180
nothing to commit, working tree clean


tput: No value for $TERM and no -T specified
tput: No value for $TERM and no -T specified
Makefile:31: run command via tools/syz-env for best compatibility, see:
Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
go list -f '{{.Stale}}' ./sys/syz-sysgen | grep -q false || go install ./sys/syz-sysgen
make .descriptions
tput: No value for $TERM and no -T specified
tput: No value for $TERM and no -T specified
Makefile:31: run command via tools/syz-env for best compatibility, see:
Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
bin/syz-sysgen
touch .descriptions
GOOS=linux GOARCH=amd64 go build "-ldflags=-s -w -X github.com/google/syzkaller/prog.GitRevision=0bd6db418098e2d98a2edf948b41410d3d9f9e70 -X 'github.com/google/syzkaller/prog.gitRevisionDate=20250411-130225'" -o ./bin/linux_amd64/syz-execprog github.com/google/syzkaller/tools/syz-execprog
mkdir -p ./bin/linux_amd64
g++ -o ./bin/linux_amd64/syz-executor executor/executor.cc \
	-m64 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -Wno-stringop-overflow -Wno-array-bounds -Wno-format-overflow -Wno-unused-but-set-variable -Wno-unused-command-line-argument -static-pie -std=c++17 -I. -Iexecutor/_include   -DGOOS_linux=1 -DGOARCH_amd64=1 \
	-DHOSTGOOS_linux=1 -DGIT_REVISION=\"0bd6db418098e2d98a2edf948b41410d3d9f9e70\"
/usr/bin/ld: /tmp/ccP81Mp7.o: in function `Connection::Connect(char const*, char const*)':
executor.cc:(.text._ZN10Connection7ConnectEPKcS1_[_ZN10Connection7ConnectEPKcS1_]+0x104): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking


Error text is too large and was truncated, full error text is at:
https://syzkaller.appspot.com/x/error.txt?x=11a9f368580000


Tested on:

commit:         33035b66 Add linux-next specific files for 20250428
git tree:       git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
kernel config:  https://syzkaller.appspot.com/x/.config?x=5748169cc3be99bc
dashboard link: https://syzkaller.appspot.com/bug?extid=8bb6fd945af4e0ad9299
compiler:       Debian clang version 20.1.2 (++20250402124445+58df0ef89dd6-1~exp1~20250402004600.97), Debian LLD 20.1.2
patch:          https://syzkaller.appspot.com/x/patch.diff?x=1292d774580000
Re: [syzbot] [mm?] WARNING in move_to_new_folio
Posted by Shivank Garg 9 months, 1 week ago
Hi,

I think the issue is due to e7021e2fe0 as described below:
https://lore.kernel.org/all/SJ1PR11MB6129E62E3B372932C6B7477FB9BD2@SJ1PR11MB6129.namprd11.prod.outlook.com/

Trying again after reverting this patch:

#syz test: https://github.com/shivankgarg98/linux.git 5d98b45ab

On 4/30/2025 1:00 PM, syzbot wrote:
> Hello,
> 
> syzbot tried to test the proposed patch but the build/boot failed:
> 
> ed.
> [    1.681174][    T0] 	Tracing variant of Tasks RCU enabled.
> [    1.681902][    T0] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
> [    1.683059][    T0] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
> [    1.684680][    T0] Running RCU synchronous self tests
> [    1.685620][    T0] RCU Tasks: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
> [    1.686925][    T0] RCU Tasks Trace: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
> [    1.823163][    T0] NR_IRQS: 4352, nr_irqs: 440, preallocated irqs: 16
> [    1.825139][    T0] rcu: srcu_init: Setting srcu_struct sizes based on contention.
> [    1.826579][    T0] kfence: initialized - using 2097152 bytes for 255 objects at 0xffff88823be00000-0xffff88823c000000
> [    1.829232][    T0] Console: colour VGA+ 80x25
> [    1.829978][    T0] printk: legacy console [ttyS0] enabled
> [    1.829978][    T0] printk: legacy console [ttyS0] enabled
> [    1.831736][    T0] printk: legacy bootconsole [earlyser0] disabled
> [    1.831736][    T0] printk: legacy bootconsole [earlyser0] disabled
> [    1.833514][    T0] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
> [    1.834681][    T0] ... MAX_LOCKDEP_SUBCLASSES:  8
> [    1.835518][    T0] ... MAX_LOCK_DEPTH:          48
> [    1.836336][    T0] ... MAX_LOCKDEP_KEYS:        8192
> [    1.837124][    T0] ... CLASSHASH_SIZE:          4096
> [    1.838035][    T0] ... MAX_LOCKDEP_ENTRIES:     1048576
> [    1.838801][    T0] ... MAX_LOCKDEP_CHAINS:      1048576
> [    1.839561][    T0] ... CHAINHASH_SIZE:          524288
> [    1.840423][    T0]  memory used by lock dependency info: 106625 kB
> [    1.841405][    T0]  memory used for stack traces: 8320 kB
> [    1.842304][    T0]  per task-struct memory footprint: 1920 bytes
> [    1.843565][    T0] mempolicy: Enabling automatic NUMA balancing. Configure with numa_balancing= or the kernel.numa_balancing sysctl
> [    1.845316][    T0] ACPI: Core revision 20241212
> [    1.846971][    T0] APIC: Switch to symmetric I/O mode setup
> [    1.848285][    T0] x2apic enabled
> [    1.852223][    T0] APIC: Switched APIC routing to: physical x2apic
> [    1.859089][    T0] ..TIMER: vector=0x30 apic1=0 pin1=0 apic2=-1 pin2=-1
> [    1.860641][    T0] clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x1fb6f3811e0, max_idle_ns: 440795202126 ns
> [    1.862247][    T0] Calibrating delay loop (skipped) preset value.. 4400.40 BogoMIPS (lpj=22002040)
> [    1.864112][    T0] Last level iTLB entries: 4KB 64, 2MB 8, 4MB 8
> [    1.865179][    T0] Last level dTLB entries: 4KB 64, 2MB 32, 4MB 32, 1GB 4
> [    1.866500][    T0] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization
> [    1.872389][    T0] Spectre V2 : Spectre BHI mitigation: SW BHB clearing on syscall and VM exit
> [    1.874070][    T0] Spectre V2 : Mitigation: IBRS
> [    1.875161][    T0] Spectre V2 : Spectre v2 / SpectreRSB: Filling RSB on context switch and VMEXIT
> [    1.876856][    T0] RETBleed: Mitigation: IBRS
> [    1.878026][    T0] Spectre V2 : mitigation: Enabling conditional Indirect Branch Prediction Barrier
> [    1.879710][    T0] Spectre V2 : User space: Mitigation: STIBP via prctl
> [    1.882307][    T0] Speculative Store Bypass: Mitigation: Speculative Store Bypass disabled via prctl
> [    1.883734][    T0] MDS: Mitigation: Clear CPU buffers
> [    1.884454][    T0] TAA: Mitigation: Clear CPU buffers
> [    1.885363][    T0] MMIO Stale Data: Vulnerable: Clear CPU buffers attempted, no microcode
> [    1.886952][    T0] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
> [    1.888547][    T0] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
> [    1.889823][    T0] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
> [    1.890929][    T0] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
> [    1.892240][    T0] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.
> [    2.193671][    T0] Freeing SMP alternatives memory: 132K
> [    2.194604][    T0] pid_max: default: 32768 minimum: 301
> [    2.196277][    T0] LSM: initializing lsm=lockdown,capability,landlock,yama,safesetid,tomoyo,apparmor,bpf,ima,evm
> [    2.198299][    T0] landlock: Up and running.
> [    2.198925][    T0] Yama: becoming mindful.
> [    2.199858][    T0] TOMOYO Linux initialized
> [    2.201374][    T0] AppArmor: AppArmor initialized
> [    2.203589][    T0] LSM support for eBPF active
> [    2.210200][    T0] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes, vmalloc hugepage)
> [    2.214840][    T0] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes, vmalloc hugepage)
> [    2.216675][    T0] Mount-cache hash table entries: 16384 (order: 5, 131072 bytes, vmalloc)
> [    2.218347][    T0] Mountpoint-cache hash table entries: 16384 (order: 5, 131072 bytes, vmalloc)
> [    2.224475][    T0] Running RCU synchronous self tests
> [    2.225441][    T0] Running RCU synchronous self tests
> [    2.347377][    T1] smpboot: CPU0: Intel(R) Xeon(R) CPU @ 2.20GHz (family: 0x6, model: 0x4f, stepping: 0x0)
> [    2.351817][    T9] ------------[ cut here ]------------
> [    2.352232][    T9] WARNING: CPU: 0 PID: 9 at arch/x86/mm/tlb.c:919 switch_mm_irqs_off+0x640/0x7c0
> [    2.352232][    T9] Modules linked in:
> [    2.352232][    T9] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.15.0-rc4-next-20250428-syzkaller-dirty #0 PREEMPT(full) 
> [    2.352232][    T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
> [    2.352232][    T9] Workqueue: events once_deferred
> [    2.352232][    T9] RIP: 0010:switch_mm_irqs_off+0x640/0x7c0
> [    2.352232][    T9] Code: 84 f4 fa ff ff 90 0f 0b 90 e9 eb fa ff ff 90 0f 0b 90 e9 84 fe ff ff 90 0f 0b 90 e9 18 fc ff ff 90 0f 0b 90 e9 cb fb ff ff 90 <0f> 0b 90 e9 df fb ff ff 89 c8 90 0f 0b 90 e9 3f fd ff ff 90 0f 0b
> [    2.352232][    T9] RSP: 0000:ffffc900000e7720 EFLAGS: 00010056
> [    2.352232][    T9] RAX: 0000000000000001 RBX: ffff88801a070940 RCX: ffffffff8173b01d
> [    2.352232][    T9] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88801a070940
> [    2.352232][    T9] RBP: ffffc900000e77f0 R08: ffff88801a070947 R09: 1ffff1100340e128
> [    2.352232][    T9] R10: dffffc0000000000 R11: ffffed100340e129 R12: 1ffff110037d70ab
> [    2.352232][    T9] R13: ffffffff8e0467c0 R14: ffff88801beb8000 R15: 0000000000000000
> [    2.352232][    T9] FS:  0000000000000000(0000) GS:ffff8881260a1000(0000) knlGS:0000000000000000
> [    2.352232][    T9] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [    2.352232][    T9] CR2: ffff88823ffff000 CR3: 000000001a078000 CR4: 00000000003506f0
> [    2.352232][    T9] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [    2.352232][    T9] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
> [    2.352232][    T9] Call Trace:
> [    2.352232][    T9]  <TASK>
> [    2.352232][    T9]  ? __pfx_switch_mm_irqs_off+0x10/0x10
> [    2.352232][    T9]  ? __text_poke+0x5a4/0x980
> [    2.352232][    T9]  ? kasan_check_range+0x29a/0x2b0
> [    2.352232][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
> [    2.352232][    T9]  unuse_temporary_mm+0x9d/0x100
> [    2.352232][    T9]  __text_poke+0x634/0x980
> [    2.352232][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
> [    2.352232][    T9]  ? __pfx_text_poke_memcpy+0x10/0x10
> [    2.352232][    T9]  ? __pfx___text_poke+0x10/0x10
> [    2.352232][    T9]  ? rcu_is_watching+0x15/0xb0
> [    2.352232][    T9]  ? trace_contention_end+0x39/0x120
> [    2.352232][    T9]  smp_text_poke_batch_finish+0x38c/0x1100
> [    2.352232][    T9]  ? __pfx___mutex_lock+0x10/0x10
> [    2.352232][    T9]  ? __pfx_smp_text_poke_batch_finish+0x10/0x10
> [    2.352232][    T9]  ? arch_jump_label_transform_queue+0x97/0x110
> [    2.352232][    T9]  ? __jump_label_update+0x37e/0x3a0
> [    2.352232][    T9]  arch_jump_label_transform_apply+0x1c/0x30
> [    2.352232][    T9]  static_key_disable_cpuslocked+0xc5/0x1b0
> [    2.352232][    T9]  static_key_disable+0x1a/0x20
> [    2.352232][    T9]  once_deferred+0x6f/0xb0
> [    2.352232][    T9]  ? process_scheduled_works+0x9ef/0x17b0
> [    2.352232][    T9]  process_scheduled_works+0xade/0x17b0
> [    2.352232][    T9]  ? __pfx_process_scheduled_works+0x10/0x10
> [    2.352232][    T9]  worker_thread+0x8a0/0xda0
> [    2.352232][    T9]  kthread+0x70e/0x8a0
> [    2.352232][    T9]  ? __pfx_worker_thread+0x10/0x10
> [    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.352232][    T9]  ? _raw_spin_unlock_irq+0x23/0x50
> [    2.352232][    T9]  ? lockdep_hardirqs_on+0x9c/0x150
> [    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.352232][    T9]  ret_from_fork+0x4b/0x80
> [    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.352232][    T9]  ret_from_fork_asm+0x1a/0x30
> [    2.352232][    T9]  </TASK>
> [    2.352232][    T9] Kernel panic - not syncing: kernel: panic_on_warn set ...
> [    2.352232][    T9] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.15.0-rc4-next-20250428-syzkaller-dirty #0 PREEMPT(full) 
> [    2.352232][    T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
> [    2.352232][    T9] Workqueue: events once_deferred
> [    2.352232][    T9] Call Trace:
> [    2.352232][    T9]  <TASK>
> [    2.352232][    T9]  dump_stack_lvl+0x99/0x250
> [    2.352232][    T9]  ? __asan_memcpy+0x40/0x70
> [    2.352232][    T9]  ? __pfx_dump_stack_lvl+0x10/0x10
> [    2.352232][    T9]  ? __pfx__printk+0x10/0x10
> [    2.352232][    T9]  panic+0x2db/0x790
> [    2.352232][    T9]  ? __pfx_panic+0x10/0x10
> [    2.352232][    T9]  ? show_trace_log_lvl+0x4fb/0x550
> [    2.352232][    T9]  ? ret_from_fork_asm+0x1a/0x30
> [    2.352232][    T9]  __warn+0x31b/0x4b0
> [    2.352232][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
> [    2.352232][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
> [    2.352232][    T9]  report_bug+0x2be/0x4f0
> [    2.352232][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
> [    2.352232][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
> [    2.352232][    T9]  ? switch_mm_irqs_off+0x642/0x7c0
> [    2.352232][    T9]  handle_bug+0x84/0x160
> [    2.352232][    T9]  exc_invalid_op+0x1a/0x50
> [    2.352232][    T9]  asm_exc_invalid_op+0x1a/0x20
> [    2.352232][    T9] RIP: 0010:switch_mm_irqs_off+0x640/0x7c0
> [    2.352232][    T9] Code: 84 f4 fa ff ff 90 0f 0b 90 e9 eb fa ff ff 90 0f 0b 90 e9 84 fe ff ff 90 0f 0b 90 e9 18 fc ff ff 90 0f 0b 90 e9 cb fb ff ff 90 <0f> 0b 90 e9 df fb ff ff 89 c8 90 0f 0b 90 e9 3f fd ff ff 90 0f 0b
> [    2.352232][    T9] RSP: 0000:ffffc900000e7720 EFLAGS: 00010056
> [    2.352232][    T9] RAX: 0000000000000001 RBX: ffff88801a070940 RCX: ffffffff8173b01d
> [    2.352232][    T9] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88801a070940
> [    2.352232][    T9] RBP: ffffc900000e77f0 R08: ffff88801a070947 R09: 1ffff1100340e128
> [    2.352232][    T9] R10: dffffc0000000000 R11: ffffed100340e129 R12: 1ffff110037d70ab
> [    2.352232][    T9] R13: ffffffff8e0467c0 R14: ffff88801beb8000 R15: 0000000000000000
> [    2.352232][    T9]  ? switch_mm_irqs_off+0x21d/0x7c0
> [    2.352232][    T9]  ? __pfx_switch_mm_irqs_off+0x10/0x10
> [    2.352232][    T9]  ? __text_poke+0x5a4/0x980
> [    2.352232][    T9]  ? kasan_check_range+0x29a/0x2b0
> [    2.352232][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
> [    2.352232][    T9]  unuse_temporary_mm+0x9d/0x100
> [    2.352232][    T9]  __text_poke+0x634/0x980
> [    2.352232][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
> [    2.352232][    T9]  ? __pfx_text_poke_memcpy+0x10/0x10
> [    2.352232][    T9]  ? __pfx___text_poke+0x10/0x10
> [    2.352232][    T9]  ? rcu_is_watching+0x15/0xb0
> [    2.352232][    T9]  ? trace_contention_end+0x39/0x120
> [    2.352232][    T9]  smp_text_poke_batch_finish+0x38c/0x1100
> [    2.352232][    T9]  ? __pfx___mutex_lock+0x10/0x10
> [    2.352232][    T9]  ? __pfx_smp_text_poke_batch_finish+0x10/0x10
> [    2.352232][    T9]  ? arch_jump_label_transform_queue+0x97/0x110
> [    2.352232][    T9]  ? __jump_label_update+0x37e/0x3a0
> [    2.352232][    T9]  arch_jump_label_transform_apply+0x1c/0x30
> [    2.352232][    T9]  static_key_disable_cpuslocked+0xc5/0x1b0
> [    2.352232][    T9]  static_key_disable+0x1a/0x20
> [    2.352232][    T9]  once_deferred+0x6f/0xb0
> [    2.352232][    T9]  ? process_scheduled_works+0x9ef/0x17b0
> [    2.352232][    T9]  process_scheduled_works+0xade/0x17b0
> [    2.352232][    T9]  ? __pfx_process_scheduled_works+0x10/0x10
> [    2.352232][    T9]  worker_thread+0x8a0/0xda0
> [    2.352232][    T9]  kthread+0x70e/0x8a0
> [    2.352232][    T9]  ? __pfx_worker_thread+0x10/0x10
> [    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.352232][    T9]  ? _raw_spin_unlock_irq+0x23/0x50
> [    2.352232][    T9]  ? lockdep_hardirqs_on+0x9c/0x150
> [    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.352232][    T9]  ret_from_fork+0x4b/0x80
> [    2.352232][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.352232][    T9]  ret_from_fork_asm+0x1a/0x30
> [    2.352232][    T9]  </TASK>
> [    2.352232][    T9] Rebooting in 86400 seconds..
> 
> 
> syzkaller build log:
> go env (err=<nil>)
> GO111MODULE='auto'
> GOARCH='amd64'
> GOBIN=''
> GOCACHE='/syzkaller/.cache/go-build'
> GOENV='/syzkaller/.config/go/env'
> GOEXE=''
> GOEXPERIMENT=''
> GOFLAGS=''
> GOHOSTARCH='amd64'
> GOHOSTOS='linux'
> GOINSECURE=''
> GOMODCACHE='/syzkaller/jobs-2/linux/gopath/pkg/mod'
> GONOPROXY=''
> GONOSUMDB=''
> GOOS='linux'
> GOPATH='/syzkaller/jobs-2/linux/gopath'
> GOPRIVATE=''
> GOPROXY='https://proxy.golang.org,direct'
> GOROOT='/syzkaller/jobs-2/linux/gopath/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.7.linux-amd64'
> GOSUMDB='sum.golang.org'
> GOTMPDIR=''
> GOTOOLCHAIN='auto'
> GOTOOLDIR='/syzkaller/jobs-2/linux/gopath/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.7.linux-amd64/pkg/tool/linux_amd64'
> GOVCS=''
> GOVERSION='go1.23.7'
> GODEBUG=''
> GOTELEMETRY='local'
> GOTELEMETRYDIR='/syzkaller/.config/go/telemetry'
> GCCGO='gccgo'
> GOAMD64='v1'
> AR='ar'
> CC='gcc'
> CXX='g++'
> CGO_ENABLED='1'
> GOMOD='/syzkaller/jobs-2/linux/gopath/src/github.com/google/syzkaller/go.mod'
> GOWORK=''
> CGO_CFLAGS='-O2 -g'
> CGO_CPPFLAGS=''
> CGO_CXXFLAGS='-O2 -g'
> CGO_FFLAGS='-O2 -g'
> CGO_LDFLAGS='-O2 -g'
> PKG_CONFIG='pkg-config'
> GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1284445660=/tmp/go-build -gno-record-gcc-switches'
> 
> git status (err=<nil>)
> HEAD detached at 0bd6db4180
> nothing to commit, working tree clean
> 
> 
> tput: No value for $TERM and no -T specified
> tput: No value for $TERM and no -T specified
> Makefile:31: run command via tools/syz-env for best compatibility, see:
> Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
> go list -f '{{.Stale}}' ./sys/syz-sysgen | grep -q false || go install ./sys/syz-sysgen
> make .descriptions
> tput: No value for $TERM and no -T specified
> tput: No value for $TERM and no -T specified
> Makefile:31: run command via tools/syz-env for best compatibility, see:
> Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
> bin/syz-sysgen
> touch .descriptions
> GOOS=linux GOARCH=amd64 go build "-ldflags=-s -w -X github.com/google/syzkaller/prog.GitRevision=0bd6db418098e2d98a2edf948b41410d3d9f9e70 -X 'github.com/google/syzkaller/prog.gitRevisionDate=20250411-130225'" -o ./bin/linux_amd64/syz-execprog github.com/google/syzkaller/tools/syz-execprog
> mkdir -p ./bin/linux_amd64
> g++ -o ./bin/linux_amd64/syz-executor executor/executor.cc \
> 	-m64 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -Wno-stringop-overflow -Wno-array-bounds -Wno-format-overflow -Wno-unused-but-set-variable -Wno-unused-command-line-argument -static-pie -std=c++17 -I. -Iexecutor/_include   -DGOOS_linux=1 -DGOARCH_amd64=1 \
> 	-DHOSTGOOS_linux=1 -DGIT_REVISION=\"0bd6db418098e2d98a2edf948b41410d3d9f9e70\"
> /usr/bin/ld: /tmp/ccP81Mp7.o: in function `Connection::Connect(char const*, char const*)':
> executor.cc:(.text._ZN10Connection7ConnectEPKcS1_[_ZN10Connection7ConnectEPKcS1_]+0x104): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
> 
> 
> Error text is too large and was truncated, full error text is at:
> https://syzkaller.appspot.com/x/error.txt?x=11a9f368580000
> 
> 
> Tested on:
> 
> commit:         33035b66 Add linux-next specific files for 20250428
> git tree:       git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
> kernel config:  https://syzkaller.appspot.com/x/.config?x=5748169cc3be99bc
> dashboard link: https://syzkaller.appspot.com/bug?extid=8bb6fd945af4e0ad9299
> compiler:       Debian clang version 20.1.2 (++20250402124445+58df0ef89dd6-1~exp1~20250402004600.97), Debian LLD 20.1.2
> patch:          https://syzkaller.appspot.com/x/patch.diff?x=1292d774580000
>
Re: [syzbot] [mm?] WARNING in move_to_new_folio
Posted by syzbot 9 months, 1 week ago
Hello,

syzbot tried to test the proposed patch but the build/boot failed:

	Tracing variant of Tasks RCU enabled.
[    1.756197][    T0] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    1.757347][    T0] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    1.758601][    T0] Running RCU synchronous self tests
[    1.759703][    T0] RCU Tasks: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
[    1.761088][    T0] RCU Tasks Trace: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
[    1.898957][    T0] NR_IRQS: 4352, nr_irqs: 440, preallocated irqs: 16
[    1.901185][    T0] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    1.902806][    T0] kfence: initialized - using 2097152 bytes for 255 objects at 0xffff88823be00000-0xffff88823c000000
[    1.905828][    T0] Console: colour VGA+ 80x25
[    1.906677][    T0] printk: legacy console [ttyS0] enabled
[    1.906677][    T0] printk: legacy console [ttyS0] enabled
[    1.908615][    T0] printk: legacy bootconsole [earlyser0] disabled
[    1.908615][    T0] printk: legacy bootconsole [earlyser0] disabled
[    1.910441][    T0] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
[    1.911593][    T0] ... MAX_LOCKDEP_SUBCLASSES:  8
[    1.912289][    T0] ... MAX_LOCK_DEPTH:          48
[    1.913471][    T0] ... MAX_LOCKDEP_KEYS:        8192
[    1.914174][    T0] ... CLASSHASH_SIZE:          4096
[    1.914891][    T0] ... MAX_LOCKDEP_ENTRIES:     1048576
[    1.915648][    T0] ... MAX_LOCKDEP_CHAINS:      1048576
[    1.916465][    T0] ... CHAINHASH_SIZE:          524288
[    1.917206][    T0]  memory used by lock dependency info: 106625 kB
[    1.918060][    T0]  memory used for stack traces: 8320 kB
[    1.919051][    T0]  per task-struct memory footprint: 1920 bytes
[    1.920079][    T0] mempolicy: Enabling automatic NUMA balancing. Configure with numa_balancing= or the kernel.numa_balancing sysctl
[    1.921730][    T0] ACPI: Core revision 20241212
[    1.923482][    T0] APIC: Switch to symmetric I/O mode setup
[    1.924904][    T0] x2apic enabled
[    1.929239][    T0] APIC: Switched APIC routing to: physical x2apic
[    1.936346][    T0] ..TIMER: vector=0x30 apic1=0 pin1=0 apic2=-1 pin2=-1
[    1.937802][    T0] clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x1fb702bab20, max_idle_ns: 440795313305 ns
[    1.939405][    T0] Calibrating delay loop (skipped) preset value.. 4400.44 BogoMIPS (lpj=22002200)
[    1.941337][    T0] Last level iTLB entries: 4KB 64, 2MB 8, 4MB 8
[    1.942346][    T0] Last level dTLB entries: 4KB 64, 2MB 32, 4MB 32, 1GB 4
[    1.949489][    T0] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization
[    1.951078][    T0] Spectre V2 : Spectre BHI mitigation: SW BHB clearing on syscall and VM exit
[    1.952604][    T0] Spectre V2 : Mitigation: IBRS
[    1.953272][    T0] Spectre V2 : Spectre v2 / SpectreRSB: Filling RSB on context switch and VMEXIT
[    1.954494][    T0] RETBleed: Mitigation: IBRS
[    1.955293][    T0] Spectre V2 : mitigation: Enabling conditional Indirect Branch Prediction Barrier
[    1.956658][    T0] Spectre V2 : User space: Mitigation: STIBP via prctl
[    1.957718][    T0] Speculative Store Bypass: Mitigation: Speculative Store Bypass disabled via prctl
[    1.959430][    T0] MDS: Mitigation: Clear CPU buffers
[    1.960142][    T0] TAA: Mitigation: Clear CPU buffers
[    1.960948][    T0] MMIO Stale Data: Vulnerable: Clear CPU buffers attempted, no microcode
[    1.962237][    T0] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[    1.963444][    T0] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[    1.964804][    T0] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[    1.965948][    T0] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
[    1.966996][    T0] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.
[    2.270147][    T0] Freeing SMP alternatives memory: 132K
[    2.271177][    T0] pid_max: default: 32768 minimum: 301
[    2.272608][    T0] LSM: initializing lsm=lockdown,capability,landlock,yama,safesetid,tomoyo,apparmor,bpf,ima,evm
[    2.274518][    T0] landlock: Up and running.
[    2.275138][    T0] Yama: becoming mindful.
[    2.276037][    T0] TOMOYO Linux initialized
[    2.277498][    T0] AppArmor: AppArmor initialized
[    2.279855][    T0] LSM support for eBPF active
[    2.286597][    T0] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes, vmalloc hugepage)
[    2.291139][    T0] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes, vmalloc hugepage)
[    2.293046][    T0] Mount-cache hash table entries: 16384 (order: 5, 131072 bytes, vmalloc)
[    2.294572][    T0] Mountpoint-cache hash table entries: 16384 (order: 5, 131072 bytes, vmalloc)
[    2.301308][    T0] Running RCU synchronous self tests
[    2.302327][    T0] Running RCU synchronous self tests
[    2.424383][    T1] smpboot: CPU0: Intel(R) Xeon(R) CPU @ 2.20GHz (family: 0x6, model: 0x4f, stepping: 0x0)
[    2.428981][    T9] ------------[ cut here ]------------
[    2.429388][    T9] WARNING: CPU: 0 PID: 9 at arch/x86/mm/tlb.c:919 switch_mm_irqs_off+0x640/0x7c0
[    2.429388][    T9] Modules linked in:
[    2.429388][    T9] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.15.0-rc4-next-20250428-syzkaller-00003-g5d98b45ab9df #0 PREEMPT(full) 
[    2.429388][    T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
[    2.429388][    T9] Workqueue: events once_deferred
[    2.429388][    T9] RIP: 0010:switch_mm_irqs_off+0x640/0x7c0
[    2.429388][    T9] Code: 84 f4 fa ff ff 90 0f 0b 90 e9 eb fa ff ff 90 0f 0b 90 e9 84 fe ff ff 90 0f 0b 90 e9 18 fc ff ff 90 0f 0b 90 e9 cb fb ff ff 90 <0f> 0b 90 e9 df fb ff ff 89 c8 90 0f 0b 90 e9 3f fd ff ff 90 0f 0b
[    2.429388][    T9] RSP: 0000:ffffc900000e7720 EFLAGS: 00010056
[    2.429388][    T9] RAX: 0000000000000001 RBX: ffff88801a070940 RCX: ffffffff8173b01d
[    2.429388][    T9] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88801a070940
[    2.429388][    T9] RBP: ffffc900000e77f0 R08: ffff88801a070947 R09: 1ffff1100340e128
[    2.429388][    T9] R10: dffffc0000000000 R11: ffffed100340e129 R12: 1ffff110037d70ab
[    2.429388][    T9] R13: ffffffff8e0467c0 R14: ffff88801beb8000 R15: 0000000000000000
[    2.429388][    T9] FS:  0000000000000000(0000) GS:ffff8881260a1000(0000) knlGS:0000000000000000
[    2.429388][    T9] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    2.429388][    T9] CR2: ffff88823ffff000 CR3: 000000001a078000 CR4: 00000000003506f0
[    2.429388][    T9] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[    2.429388][    T9] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[    2.429388][    T9] Call Trace:
[    2.429388][    T9]  <TASK>
[    2.429388][    T9]  ? __pfx_switch_mm_irqs_off+0x10/0x10
[    2.429388][    T9]  ? __text_poke+0x5a4/0x980
[    2.429388][    T9]  ? kasan_check_range+0x29a/0x2b0
[    2.429388][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
[    2.429388][    T9]  unuse_temporary_mm+0x9d/0x100
[    2.429388][    T9]  __text_poke+0x634/0x980
[    2.429388][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
[    2.429388][    T9]  ? __pfx_text_poke_memcpy+0x10/0x10
[    2.429388][    T9]  ? __pfx___text_poke+0x10/0x10
[    2.429388][    T9]  ? rcu_is_watching+0x15/0xb0
[    2.429388][    T9]  ? trace_contention_end+0x39/0x120
[    2.429388][    T9]  smp_text_poke_batch_finish+0x38c/0x1100
[    2.429388][    T9]  ? __pfx___mutex_lock+0x10/0x10
[    2.429388][    T9]  ? __pfx_smp_text_poke_batch_finish+0x10/0x10
[    2.429388][    T9]  ? arch_jump_label_transform_queue+0x97/0x110
[    2.429388][    T9]  ? __jump_label_update+0x37e/0x3a0
[    2.429388][    T9]  arch_jump_label_transform_apply+0x1c/0x30
[    2.429388][    T9]  static_key_disable_cpuslocked+0xc5/0x1b0
[    2.429388][    T9]  static_key_disable+0x1a/0x20
[    2.429388][    T9]  once_deferred+0x6f/0xb0
[    2.429388][    T9]  ? process_scheduled_works+0x9ef/0x17b0
[    2.429388][    T9]  process_scheduled_works+0xade/0x17b0
[    2.429388][    T9]  ? __pfx_process_scheduled_works+0x10/0x10
[    2.429388][    T9]  worker_thread+0x8a0/0xda0
[    2.429388][    T9]  kthread+0x70e/0x8a0
[    2.429388][    T9]  ? __pfx_worker_thread+0x10/0x10
[    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
[    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
[    2.429388][    T9]  ? _raw_spin_unlock_irq+0x23/0x50
[    2.429388][    T9]  ? lockdep_hardirqs_on+0x9c/0x150
[    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
[    2.429388][    T9]  ret_from_fork+0x4b/0x80
[    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
[    2.429388][    T9]  ret_from_fork_asm+0x1a/0x30
[    2.429388][    T9]  </TASK>
[    2.429388][    T9] Kernel panic - not syncing: kernel: panic_on_warn set ...
[    2.429388][    T9] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.15.0-rc4-next-20250428-syzkaller-00003-g5d98b45ab9df #0 PREEMPT(full) 
[    2.429388][    T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
[    2.429388][    T9] Workqueue: events once_deferred
[    2.429388][    T9] Call Trace:
[    2.429388][    T9]  <TASK>
[    2.429388][    T9]  dump_stack_lvl+0x99/0x250
[    2.429388][    T9]  ? __asan_memcpy+0x40/0x70
[    2.429388][    T9]  ? __pfx_dump_stack_lvl+0x10/0x10
[    2.429388][    T9]  ? __pfx__printk+0x10/0x10
[    2.429388][    T9]  panic+0x2db/0x790
[    2.429388][    T9]  ? __pfx_panic+0x10/0x10
[    2.429388][    T9]  ? show_trace_log_lvl+0x4fb/0x550
[    2.429388][    T9]  ? ret_from_fork_asm+0x1a/0x30
[    2.429388][    T9]  __warn+0x31b/0x4b0
[    2.429388][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
[    2.429388][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
[    2.429388][    T9]  report_bug+0x2be/0x4f0
[    2.429388][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
[    2.429388][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
[    2.429388][    T9]  ? switch_mm_irqs_off+0x642/0x7c0
[    2.429388][    T9]  handle_bug+0x84/0x160
[    2.429388][    T9]  exc_invalid_op+0x1a/0x50
[    2.429388][    T9]  asm_exc_invalid_op+0x1a/0x20
[    2.429388][    T9] RIP: 0010:switch_mm_irqs_off+0x640/0x7c0
[    2.429388][    T9] Code: 84 f4 fa ff ff 90 0f 0b 90 e9 eb fa ff ff 90 0f 0b 90 e9 84 fe ff ff 90 0f 0b 90 e9 18 fc ff ff 90 0f 0b 90 e9 cb fb ff ff 90 <0f> 0b 90 e9 df fb ff ff 89 c8 90 0f 0b 90 e9 3f fd ff ff 90 0f 0b
[    2.429388][    T9] RSP: 0000:ffffc900000e7720 EFLAGS: 00010056
[    2.429388][    T9] RAX: 0000000000000001 RBX: ffff88801a070940 RCX: ffffffff8173b01d
[    2.429388][    T9] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88801a070940
[    2.429388][    T9] RBP: ffffc900000e77f0 R08: ffff88801a070947 R09: 1ffff1100340e128
[    2.429388][    T9] R10: dffffc0000000000 R11: ffffed100340e129 R12: 1ffff110037d70ab
[    2.429388][    T9] R13: ffffffff8e0467c0 R14: ffff88801beb8000 R15: 0000000000000000
[    2.429388][    T9]  ? switch_mm_irqs_off+0x21d/0x7c0
[    2.429388][    T9]  ? __pfx_switch_mm_irqs_off+0x10/0x10
[    2.429388][    T9]  ? __text_poke+0x5a4/0x980
[    2.429388][    T9]  ? kasan_check_range+0x29a/0x2b0
[    2.429388][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
[    2.429388][    T9]  unuse_temporary_mm+0x9d/0x100
[    2.429388][    T9]  __text_poke+0x634/0x980
[    2.429388][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
[    2.429388][    T9]  ? __pfx_text_poke_memcpy+0x10/0x10
[    2.429388][    T9]  ? __pfx___text_poke+0x10/0x10
[    2.429388][    T9]  ? rcu_is_watching+0x15/0xb0
[    2.429388][    T9]  ? trace_contention_end+0x39/0x120
[    2.429388][    T9]  smp_text_poke_batch_finish+0x38c/0x1100
[    2.429388][    T9]  ? __pfx___mutex_lock+0x10/0x10
[    2.429388][    T9]  ? __pfx_smp_text_poke_batch_finish+0x10/0x10
[    2.429388][    T9]  ? arch_jump_label_transform_queue+0x97/0x110
[    2.429388][    T9]  ? __jump_label_update+0x37e/0x3a0
[    2.429388][    T9]  arch_jump_label_transform_apply+0x1c/0x30
[    2.429388][    T9]  static_key_disable_cpuslocked+0xc5/0x1b0
[    2.429388][    T9]  static_key_disable+0x1a/0x20
[    2.429388][    T9]  once_deferred+0x6f/0xb0
[    2.429388][    T9]  ? process_scheduled_works+0x9ef/0x17b0
[    2.429388][    T9]  process_scheduled_works+0xade/0x17b0
[    2.429388][    T9]  ? __pfx_process_scheduled_works+0x10/0x10
[    2.429388][    T9]  worker_thread+0x8a0/0xda0
[    2.429388][    T9]  kthread+0x70e/0x8a0
[    2.429388][    T9]  ? __pfx_worker_thread+0x10/0x10
[    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
[    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
[    2.429388][    T9]  ? _raw_spin_unlock_irq+0x23/0x50
[    2.429388][    T9]  ? lockdep_hardirqs_on+0x9c/0x150
[    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
[    2.429388][    T9]  ret_from_fork+0x4b/0x80
[    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
[    2.429388][    T9]  ret_from_fork_asm+0x1a/0x30
[    2.429388][    T9]  </TASK>
[    2.429388][    T9] Rebooting in 86400 seconds..


syzkaller build log:
go env (err=<nil>)
GO111MODULE='auto'
GOARCH='amd64'
GOBIN=''
GOCACHE='/syzkaller/.cache/go-build'
GOENV='/syzkaller/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/syzkaller/jobs-2/linux/gopath/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/syzkaller/jobs-2/linux/gopath'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/syzkaller/jobs-2/linux/gopath/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.7.linux-amd64'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/syzkaller/jobs-2/linux/gopath/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.7.linux-amd64/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.23.7'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/syzkaller/.config/go/telemetry'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/syzkaller/jobs-2/linux/gopath/src/github.com/google/syzkaller/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1460608260=/tmp/go-build -gno-record-gcc-switches'

git status (err=<nil>)
HEAD detached at 0bd6db4180
nothing to commit, working tree clean


tput: No value for $TERM and no -T specified
tput: No value for $TERM and no -T specified
Makefile:31: run command via tools/syz-env for best compatibility, see:
Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
go list -f '{{.Stale}}' ./sys/syz-sysgen | grep -q false || go install ./sys/syz-sysgen
make .descriptions
tput: No value for $TERM and no -T specified
tput: No value for $TERM and no -T specified
Makefile:31: run command via tools/syz-env for best compatibility, see:
Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
bin/syz-sysgen
touch .descriptions
GOOS=linux GOARCH=amd64 go build "-ldflags=-s -w -X github.com/google/syzkaller/prog.GitRevision=0bd6db418098e2d98a2edf948b41410d3d9f9e70 -X 'github.com/google/syzkaller/prog.gitRevisionDate=20250411-130225'" -o ./bin/linux_amd64/syz-execprog github.com/google/syzkaller/tools/syz-execprog
mkdir -p ./bin/linux_amd64
g++ -o ./bin/linux_amd64/syz-executor executor/executor.cc \
	-m64 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -Wno-stringop-overflow -Wno-array-bounds -Wno-format-overflow -Wno-unused-but-set-variable -Wno-unused-command-line-argument -static-pie -std=c++17 -I. -Iexecutor/_include   -DGOOS_linux=1 -DGOARCH_amd64=1 \
	-DHOSTGOOS_linux=1 -DGIT_REVISION=\"0bd6db418098e2d98a2edf948b41410d3d9f9e70\"
/usr/bin/ld: /tmp/ccRsxVxg.o: in function `Connection::Connect(char const*, char const*)':
executor.cc:(.text._ZN10Connection7ConnectEPKcS1_[_ZN10Connection7ConnectEPKcS1_]+0x104): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking


Error text is too large and was truncated, full error text is at:
https://syzkaller.appspot.com/x/error.txt?x=11c3d774580000


Tested on:

commit:         5d98b45a Revert "x86/efi: Make efi_enter/leave_mm() us..
git tree:       https://github.com/shivankgarg98/linux.git
kernel config:  https://syzkaller.appspot.com/x/.config?x=5748169cc3be99bc
dashboard link: https://syzkaller.appspot.com/bug?extid=8bb6fd945af4e0ad9299
compiler:       Debian clang version 20.1.2 (++20250402124445+58df0ef89dd6-1~exp1~20250402004600.97), Debian LLD 20.1.2

Note: no patches were applied.
Re: [syzbot] [mm?] WARNING in move_to_new_folio
Posted by Shivank Garg 9 months, 1 week ago
The issue is due to e7021e2fe0 as described below:
https://lore.kernel.org/all/SJ1PR11MB6129E62E3B372932C6B7477FB9BD2@SJ1PR11MB6129.namprd11.prod.outlook.com/

Trying again after reverting all commits of this patch-series:

#syz test: https://github.com/shivankgarg98/linux.git 69a58d5260

On 4/30/2025 1:53 PM, syzbot wrote:
> Hello,
> 
> syzbot tried to test the proposed patch but the build/boot failed:
> 
> 	Tracing variant of Tasks RCU enabled.
> [    1.756197][    T0] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
> [    1.757347][    T0] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
> [    1.758601][    T0] Running RCU synchronous self tests
> [    1.759703][    T0] RCU Tasks: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
> [    1.761088][    T0] RCU Tasks Trace: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
> [    1.898957][    T0] NR_IRQS: 4352, nr_irqs: 440, preallocated irqs: 16
> [    1.901185][    T0] rcu: srcu_init: Setting srcu_struct sizes based on contention.
> [    1.902806][    T0] kfence: initialized - using 2097152 bytes for 255 objects at 0xffff88823be00000-0xffff88823c000000
> [    1.905828][    T0] Console: colour VGA+ 80x25
> [    1.906677][    T0] printk: legacy console [ttyS0] enabled
> [    1.906677][    T0] printk: legacy console [ttyS0] enabled
> [    1.908615][    T0] printk: legacy bootconsole [earlyser0] disabled
> [    1.908615][    T0] printk: legacy bootconsole [earlyser0] disabled
> [    1.910441][    T0] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
> [    1.911593][    T0] ... MAX_LOCKDEP_SUBCLASSES:  8
> [    1.912289][    T0] ... MAX_LOCK_DEPTH:          48
> [    1.913471][    T0] ... MAX_LOCKDEP_KEYS:        8192
> [    1.914174][    T0] ... CLASSHASH_SIZE:          4096
> [    1.914891][    T0] ... MAX_LOCKDEP_ENTRIES:     1048576
> [    1.915648][    T0] ... MAX_LOCKDEP_CHAINS:      1048576
> [    1.916465][    T0] ... CHAINHASH_SIZE:          524288
> [    1.917206][    T0]  memory used by lock dependency info: 106625 kB
> [    1.918060][    T0]  memory used for stack traces: 8320 kB
> [    1.919051][    T0]  per task-struct memory footprint: 1920 bytes
> [    1.920079][    T0] mempolicy: Enabling automatic NUMA balancing. Configure with numa_balancing= or the kernel.numa_balancing sysctl
> [    1.921730][    T0] ACPI: Core revision 20241212
> [    1.923482][    T0] APIC: Switch to symmetric I/O mode setup
> [    1.924904][    T0] x2apic enabled
> [    1.929239][    T0] APIC: Switched APIC routing to: physical x2apic
> [    1.936346][    T0] ..TIMER: vector=0x30 apic1=0 pin1=0 apic2=-1 pin2=-1
> [    1.937802][    T0] clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x1fb702bab20, max_idle_ns: 440795313305 ns
> [    1.939405][    T0] Calibrating delay loop (skipped) preset value.. 4400.44 BogoMIPS (lpj=22002200)
> [    1.941337][    T0] Last level iTLB entries: 4KB 64, 2MB 8, 4MB 8
> [    1.942346][    T0] Last level dTLB entries: 4KB 64, 2MB 32, 4MB 32, 1GB 4
> [    1.949489][    T0] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization
> [    1.951078][    T0] Spectre V2 : Spectre BHI mitigation: SW BHB clearing on syscall and VM exit
> [    1.952604][    T0] Spectre V2 : Mitigation: IBRS
> [    1.953272][    T0] Spectre V2 : Spectre v2 / SpectreRSB: Filling RSB on context switch and VMEXIT
> [    1.954494][    T0] RETBleed: Mitigation: IBRS
> [    1.955293][    T0] Spectre V2 : mitigation: Enabling conditional Indirect Branch Prediction Barrier
> [    1.956658][    T0] Spectre V2 : User space: Mitigation: STIBP via prctl
> [    1.957718][    T0] Speculative Store Bypass: Mitigation: Speculative Store Bypass disabled via prctl
> [    1.959430][    T0] MDS: Mitigation: Clear CPU buffers
> [    1.960142][    T0] TAA: Mitigation: Clear CPU buffers
> [    1.960948][    T0] MMIO Stale Data: Vulnerable: Clear CPU buffers attempted, no microcode
> [    1.962237][    T0] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
> [    1.963444][    T0] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
> [    1.964804][    T0] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
> [    1.965948][    T0] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
> [    1.966996][    T0] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.
> [    2.270147][    T0] Freeing SMP alternatives memory: 132K
> [    2.271177][    T0] pid_max: default: 32768 minimum: 301
> [    2.272608][    T0] LSM: initializing lsm=lockdown,capability,landlock,yama,safesetid,tomoyo,apparmor,bpf,ima,evm
> [    2.274518][    T0] landlock: Up and running.
> [    2.275138][    T0] Yama: becoming mindful.
> [    2.276037][    T0] TOMOYO Linux initialized
> [    2.277498][    T0] AppArmor: AppArmor initialized
> [    2.279855][    T0] LSM support for eBPF active
> [    2.286597][    T0] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes, vmalloc hugepage)
> [    2.291139][    T0] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes, vmalloc hugepage)
> [    2.293046][    T0] Mount-cache hash table entries: 16384 (order: 5, 131072 bytes, vmalloc)
> [    2.294572][    T0] Mountpoint-cache hash table entries: 16384 (order: 5, 131072 bytes, vmalloc)
> [    2.301308][    T0] Running RCU synchronous self tests
> [    2.302327][    T0] Running RCU synchronous self tests
> [    2.424383][    T1] smpboot: CPU0: Intel(R) Xeon(R) CPU @ 2.20GHz (family: 0x6, model: 0x4f, stepping: 0x0)
> [    2.428981][    T9] ------------[ cut here ]------------
> [    2.429388][    T9] WARNING: CPU: 0 PID: 9 at arch/x86/mm/tlb.c:919 switch_mm_irqs_off+0x640/0x7c0
> [    2.429388][    T9] Modules linked in:
> [    2.429388][    T9] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.15.0-rc4-next-20250428-syzkaller-00003-g5d98b45ab9df #0 PREEMPT(full) 
> [    2.429388][    T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
> [    2.429388][    T9] Workqueue: events once_deferred
> [    2.429388][    T9] RIP: 0010:switch_mm_irqs_off+0x640/0x7c0
> [    2.429388][    T9] Code: 84 f4 fa ff ff 90 0f 0b 90 e9 eb fa ff ff 90 0f 0b 90 e9 84 fe ff ff 90 0f 0b 90 e9 18 fc ff ff 90 0f 0b 90 e9 cb fb ff ff 90 <0f> 0b 90 e9 df fb ff ff 89 c8 90 0f 0b 90 e9 3f fd ff ff 90 0f 0b
> [    2.429388][    T9] RSP: 0000:ffffc900000e7720 EFLAGS: 00010056
> [    2.429388][    T9] RAX: 0000000000000001 RBX: ffff88801a070940 RCX: ffffffff8173b01d
> [    2.429388][    T9] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88801a070940
> [    2.429388][    T9] RBP: ffffc900000e77f0 R08: ffff88801a070947 R09: 1ffff1100340e128
> [    2.429388][    T9] R10: dffffc0000000000 R11: ffffed100340e129 R12: 1ffff110037d70ab
> [    2.429388][    T9] R13: ffffffff8e0467c0 R14: ffff88801beb8000 R15: 0000000000000000
> [    2.429388][    T9] FS:  0000000000000000(0000) GS:ffff8881260a1000(0000) knlGS:0000000000000000
> [    2.429388][    T9] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [    2.429388][    T9] CR2: ffff88823ffff000 CR3: 000000001a078000 CR4: 00000000003506f0
> [    2.429388][    T9] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [    2.429388][    T9] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
> [    2.429388][    T9] Call Trace:
> [    2.429388][    T9]  <TASK>
> [    2.429388][    T9]  ? __pfx_switch_mm_irqs_off+0x10/0x10
> [    2.429388][    T9]  ? __text_poke+0x5a4/0x980
> [    2.429388][    T9]  ? kasan_check_range+0x29a/0x2b0
> [    2.429388][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
> [    2.429388][    T9]  unuse_temporary_mm+0x9d/0x100
> [    2.429388][    T9]  __text_poke+0x634/0x980
> [    2.429388][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
> [    2.429388][    T9]  ? __pfx_text_poke_memcpy+0x10/0x10
> [    2.429388][    T9]  ? __pfx___text_poke+0x10/0x10
> [    2.429388][    T9]  ? rcu_is_watching+0x15/0xb0
> [    2.429388][    T9]  ? trace_contention_end+0x39/0x120
> [    2.429388][    T9]  smp_text_poke_batch_finish+0x38c/0x1100
> [    2.429388][    T9]  ? __pfx___mutex_lock+0x10/0x10
> [    2.429388][    T9]  ? __pfx_smp_text_poke_batch_finish+0x10/0x10
> [    2.429388][    T9]  ? arch_jump_label_transform_queue+0x97/0x110
> [    2.429388][    T9]  ? __jump_label_update+0x37e/0x3a0
> [    2.429388][    T9]  arch_jump_label_transform_apply+0x1c/0x30
> [    2.429388][    T9]  static_key_disable_cpuslocked+0xc5/0x1b0
> [    2.429388][    T9]  static_key_disable+0x1a/0x20
> [    2.429388][    T9]  once_deferred+0x6f/0xb0
> [    2.429388][    T9]  ? process_scheduled_works+0x9ef/0x17b0
> [    2.429388][    T9]  process_scheduled_works+0xade/0x17b0
> [    2.429388][    T9]  ? __pfx_process_scheduled_works+0x10/0x10
> [    2.429388][    T9]  worker_thread+0x8a0/0xda0
> [    2.429388][    T9]  kthread+0x70e/0x8a0
> [    2.429388][    T9]  ? __pfx_worker_thread+0x10/0x10
> [    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.429388][    T9]  ? _raw_spin_unlock_irq+0x23/0x50
> [    2.429388][    T9]  ? lockdep_hardirqs_on+0x9c/0x150
> [    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.429388][    T9]  ret_from_fork+0x4b/0x80
> [    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.429388][    T9]  ret_from_fork_asm+0x1a/0x30
> [    2.429388][    T9]  </TASK>
> [    2.429388][    T9] Kernel panic - not syncing: kernel: panic_on_warn set ...
> [    2.429388][    T9] CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.15.0-rc4-next-20250428-syzkaller-00003-g5d98b45ab9df #0 PREEMPT(full) 
> [    2.429388][    T9] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
> [    2.429388][    T9] Workqueue: events once_deferred
> [    2.429388][    T9] Call Trace:
> [    2.429388][    T9]  <TASK>
> [    2.429388][    T9]  dump_stack_lvl+0x99/0x250
> [    2.429388][    T9]  ? __asan_memcpy+0x40/0x70
> [    2.429388][    T9]  ? __pfx_dump_stack_lvl+0x10/0x10
> [    2.429388][    T9]  ? __pfx__printk+0x10/0x10
> [    2.429388][    T9]  panic+0x2db/0x790
> [    2.429388][    T9]  ? __pfx_panic+0x10/0x10
> [    2.429388][    T9]  ? show_trace_log_lvl+0x4fb/0x550
> [    2.429388][    T9]  ? ret_from_fork_asm+0x1a/0x30
> [    2.429388][    T9]  __warn+0x31b/0x4b0
> [    2.429388][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
> [    2.429388][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
> [    2.429388][    T9]  report_bug+0x2be/0x4f0
> [    2.429388][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
> [    2.429388][    T9]  ? switch_mm_irqs_off+0x640/0x7c0
> [    2.429388][    T9]  ? switch_mm_irqs_off+0x642/0x7c0
> [    2.429388][    T9]  handle_bug+0x84/0x160
> [    2.429388][    T9]  exc_invalid_op+0x1a/0x50
> [    2.429388][    T9]  asm_exc_invalid_op+0x1a/0x20
> [    2.429388][    T9] RIP: 0010:switch_mm_irqs_off+0x640/0x7c0
> [    2.429388][    T9] Code: 84 f4 fa ff ff 90 0f 0b 90 e9 eb fa ff ff 90 0f 0b 90 e9 84 fe ff ff 90 0f 0b 90 e9 18 fc ff ff 90 0f 0b 90 e9 cb fb ff ff 90 <0f> 0b 90 e9 df fb ff ff 89 c8 90 0f 0b 90 e9 3f fd ff ff 90 0f 0b
> [    2.429388][    T9] RSP: 0000:ffffc900000e7720 EFLAGS: 00010056
> [    2.429388][    T9] RAX: 0000000000000001 RBX: ffff88801a070940 RCX: ffffffff8173b01d
> [    2.429388][    T9] RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffff88801a070940
> [    2.429388][    T9] RBP: ffffc900000e77f0 R08: ffff88801a070947 R09: 1ffff1100340e128
> [    2.429388][    T9] R10: dffffc0000000000 R11: ffffed100340e129 R12: 1ffff110037d70ab
> [    2.429388][    T9] R13: ffffffff8e0467c0 R14: ffff88801beb8000 R15: 0000000000000000
> [    2.429388][    T9]  ? switch_mm_irqs_off+0x21d/0x7c0
> [    2.429388][    T9]  ? __pfx_switch_mm_irqs_off+0x10/0x10
> [    2.429388][    T9]  ? __text_poke+0x5a4/0x980
> [    2.429388][    T9]  ? kasan_check_range+0x29a/0x2b0
> [    2.429388][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
> [    2.429388][    T9]  unuse_temporary_mm+0x9d/0x100
> [    2.429388][    T9]  __text_poke+0x634/0x980
> [    2.429388][    T9]  ? serial8250_isa_init_ports+0x63/0xf0
> [    2.429388][    T9]  ? __pfx_text_poke_memcpy+0x10/0x10
> [    2.429388][    T9]  ? __pfx___text_poke+0x10/0x10
> [    2.429388][    T9]  ? rcu_is_watching+0x15/0xb0
> [    2.429388][    T9]  ? trace_contention_end+0x39/0x120
> [    2.429388][    T9]  smp_text_poke_batch_finish+0x38c/0x1100
> [    2.429388][    T9]  ? __pfx___mutex_lock+0x10/0x10
> [    2.429388][    T9]  ? __pfx_smp_text_poke_batch_finish+0x10/0x10
> [    2.429388][    T9]  ? arch_jump_label_transform_queue+0x97/0x110
> [    2.429388][    T9]  ? __jump_label_update+0x37e/0x3a0
> [    2.429388][    T9]  arch_jump_label_transform_apply+0x1c/0x30
> [    2.429388][    T9]  static_key_disable_cpuslocked+0xc5/0x1b0
> [    2.429388][    T9]  static_key_disable+0x1a/0x20
> [    2.429388][    T9]  once_deferred+0x6f/0xb0
> [    2.429388][    T9]  ? process_scheduled_works+0x9ef/0x17b0
> [    2.429388][    T9]  process_scheduled_works+0xade/0x17b0
> [    2.429388][    T9]  ? __pfx_process_scheduled_works+0x10/0x10
> [    2.429388][    T9]  worker_thread+0x8a0/0xda0
> [    2.429388][    T9]  kthread+0x70e/0x8a0
> [    2.429388][    T9]  ? __pfx_worker_thread+0x10/0x10
> [    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.429388][    T9]  ? _raw_spin_unlock_irq+0x23/0x50
> [    2.429388][    T9]  ? lockdep_hardirqs_on+0x9c/0x150
> [    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.429388][    T9]  ret_from_fork+0x4b/0x80
> [    2.429388][    T9]  ? __pfx_kthread+0x10/0x10
> [    2.429388][    T9]  ret_from_fork_asm+0x1a/0x30
> [    2.429388][    T9]  </TASK>
> [    2.429388][    T9] Rebooting in 86400 seconds..
> 
> 
> syzkaller build log:
> go env (err=<nil>)
> GO111MODULE='auto'
> GOARCH='amd64'
> GOBIN=''
> GOCACHE='/syzkaller/.cache/go-build'
> GOENV='/syzkaller/.config/go/env'
> GOEXE=''
> GOEXPERIMENT=''
> GOFLAGS=''
> GOHOSTARCH='amd64'
> GOHOSTOS='linux'
> GOINSECURE=''
> GOMODCACHE='/syzkaller/jobs-2/linux/gopath/pkg/mod'
> GONOPROXY=''
> GONOSUMDB=''
> GOOS='linux'
> GOPATH='/syzkaller/jobs-2/linux/gopath'
> GOPRIVATE=''
> GOPROXY='https://proxy.golang.org,direct'
> GOROOT='/syzkaller/jobs-2/linux/gopath/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.7.linux-amd64'
> GOSUMDB='sum.golang.org'
> GOTMPDIR=''
> GOTOOLCHAIN='auto'
> GOTOOLDIR='/syzkaller/jobs-2/linux/gopath/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.7.linux-amd64/pkg/tool/linux_amd64'
> GOVCS=''
> GOVERSION='go1.23.7'
> GODEBUG=''
> GOTELEMETRY='local'
> GOTELEMETRYDIR='/syzkaller/.config/go/telemetry'
> GCCGO='gccgo'
> GOAMD64='v1'
> AR='ar'
> CC='gcc'
> CXX='g++'
> CGO_ENABLED='1'
> GOMOD='/syzkaller/jobs-2/linux/gopath/src/github.com/google/syzkaller/go.mod'
> GOWORK=''
> CGO_CFLAGS='-O2 -g'
> CGO_CPPFLAGS=''
> CGO_CXXFLAGS='-O2 -g'
> CGO_FFLAGS='-O2 -g'
> CGO_LDFLAGS='-O2 -g'
> PKG_CONFIG='pkg-config'
> GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1460608260=/tmp/go-build -gno-record-gcc-switches'
> 
> git status (err=<nil>)
> HEAD detached at 0bd6db4180
> nothing to commit, working tree clean
> 
> 
> tput: No value for $TERM and no -T specified
> tput: No value for $TERM and no -T specified
> Makefile:31: run command via tools/syz-env for best compatibility, see:
> Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
> go list -f '{{.Stale}}' ./sys/syz-sysgen | grep -q false || go install ./sys/syz-sysgen
> make .descriptions
> tput: No value for $TERM and no -T specified
> tput: No value for $TERM and no -T specified
> Makefile:31: run command via tools/syz-env for best compatibility, see:
> Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
> bin/syz-sysgen
> touch .descriptions
> GOOS=linux GOARCH=amd64 go build "-ldflags=-s -w -X github.com/google/syzkaller/prog.GitRevision=0bd6db418098e2d98a2edf948b41410d3d9f9e70 -X 'github.com/google/syzkaller/prog.gitRevisionDate=20250411-130225'" -o ./bin/linux_amd64/syz-execprog github.com/google/syzkaller/tools/syz-execprog
> mkdir -p ./bin/linux_amd64
> g++ -o ./bin/linux_amd64/syz-executor executor/executor.cc \
> 	-m64 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -Wno-stringop-overflow -Wno-array-bounds -Wno-format-overflow -Wno-unused-but-set-variable -Wno-unused-command-line-argument -static-pie -std=c++17 -I. -Iexecutor/_include   -DGOOS_linux=1 -DGOARCH_amd64=1 \
> 	-DHOSTGOOS_linux=1 -DGIT_REVISION=\"0bd6db418098e2d98a2edf948b41410d3d9f9e70\"
> /usr/bin/ld: /tmp/ccRsxVxg.o: in function `Connection::Connect(char const*, char const*)':
> executor.cc:(.text._ZN10Connection7ConnectEPKcS1_[_ZN10Connection7ConnectEPKcS1_]+0x104): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
> 
> 
> Error text is too large and was truncated, full error text is at:
> https://syzkaller.appspot.com/x/error.txt?x=11c3d774580000
> 
> 
> Tested on:
> 
> commit:         5d98b45a Revert "x86/efi: Make efi_enter/leave_mm() us..
> git tree:       https://github.com/shivankgarg98/linux.git
> kernel config:  https://syzkaller.appspot.com/x/.config?x=5748169cc3be99bc
> dashboard link: https://syzkaller.appspot.com/bug?extid=8bb6fd945af4e0ad9299
> compiler:       Debian clang version 20.1.2 (++20250402124445+58df0ef89dd6-1~exp1~20250402004600.97), Debian LLD 20.1.2
> 
> Note: no patches were applied.
Re: [syzbot] [mm?] WARNING in move_to_new_folio
Posted by syzbot 9 months, 1 week ago
Hello,

syzbot has tested the proposed patch and the reproducer did not trigger any issue:

Reported-by: syzbot+8bb6fd945af4e0ad9299@syzkaller.appspotmail.com
Tested-by: syzbot+8bb6fd945af4e0ad9299@syzkaller.appspotmail.com

Tested on:

commit:         69a58d52 Revert "x86/mm: Add 'mm' argument to unuse_te..
git tree:       https://github.com/shivankgarg98/linux.git
console output: https://syzkaller.appspot.com/x/log.txt?x=114fd774580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=f002bbe3fe2ccafa
dashboard link: https://syzkaller.appspot.com/bug?extid=8bb6fd945af4e0ad9299
compiler:       Debian clang version 20.1.2 (++20250402124445+58df0ef89dd6-1~exp1~20250402004600.97), Debian LLD 20.1.2

Note: no patches were applied.
Note: testing is done by a robot and is best-effort only.