[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <tencent_A58D9392315DBB5DE51976CFB48D98A58207@qq.com>
Date: Tue, 25 Feb 2025 16:43:36 +0800
From: Edward Adam Davis <eadavis@...com>
To: syzbot+556fda2d78f9b0daa141@...kaller.appspotmail.com
Cc: linux-kernel@...r.kernel.org,
syzkaller-bugs@...glegroups.com
Subject: Re: [syzbot] [io-uring?] [mm?] general protection fault in lock_vma_under_rcu
#syz test
diff --git a/mm/memory.c b/mm/memory.c
index d5c4f932b399..f67670cb2e22 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -6484,7 +6484,7 @@ struct vm_area_struct *lock_vma_under_rcu(struct mm_struct *mm,
unsigned long address)
{
MA_STATE(mas, &mm->mm_mt, address, address);
- struct vm_area_struct *vma;
+ struct vm_area_struct *vma, *vma2;
rcu_read_lock();
retry:
@@ -6492,10 +6492,10 @@ struct vm_area_struct *lock_vma_under_rcu(struct mm_struct *mm,
if (!vma)
goto inval;
- vma = vma_start_read(mm, vma);
- if (IS_ERR_OR_NULL(vma)) {
+ vma2 = vma_start_read(mm, vma);
+ if (IS_ERR_OR_NULL(vma2)) {
/* Check if the VMA got isolated after we found it */
- if (PTR_ERR(vma) == -EAGAIN) {
+ if (PTR_ERR(vma2) == -EAGAIN) {
count_vm_vma_lock_event(VMA_LOCK_MISS);
/* The area was replaced with another one */
goto retry;
Powered by blists - more mailing lists