Commit 3c91d286 authored by Ricardo Cañuelo Navarro's avatar Ricardo Cañuelo Navarro Committed by Euler
Browse files

mm: shmem: remove unnecessary warning in shmem_writepage()

mainline inclusion
from mainline-v6.14-rc6
commit adae46ac1e38a288b14f0298e27412adcba83f8e
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/IBRZ7H

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=adae46ac1e38a288b14f0298e27412adcba83f8e

--------------------------------

Although the scenario where shmem_writepage() is called with info->flags &
VM_LOCKED is unlikely to happen, it's still possible, as evidenced by
syzbot [1].  However, the warning in this case isn't necessary because the
situation is already handled correctly [2].

[2] https://lore.kernel.org/lkml/8afe1f7f-31a2-4fc0-1fbd-f9ba8a116fe3@google.com/

Link: https://lkml.kernel.org/r/20250226-20250221-warning-in-shmem_writepage-v1-1-5ad19420e17e@igalia.com


Fixes: 9a976f0c ("shmem: skip page split if we're not reclaiming")
Signed-off-by: default avatarRicardo Cañuelo Navarro <rcn@igalia.com>
Reported-by: default avatarPengfei Xu <pengfei.xu@intel.com>
Closes: https://lore.kernel.org/lkml/ZZ9PShXjKJkVelNm@xpf.sh.intel.com/

 [1]
Suggested-by: default avatarHugh Dickins <hughd@google.com>
Reviewed-by: default avatarBaolin Wang <baolin.wang@linux.alibaba.com>
Cc: Florent Revest <revest@chromium.org>
Cc: Christian Brauner <brauner@kernel.org>
Cc: David Hildenbrand <david@redhat.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: Florent Revest <revest@chromium.org>
Cc: Luis Chamberalin <mcgrof@kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarWang Lian <dev01404@linx-info.com>
parent 6a2a7743
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1471,7 +1471,7 @@ static int shmem_writepage(struct page *page, struct writeback_control *wbc)
	if (WARN_ON_ONCE(!wbc->for_reclaim))
		goto redirty;

	if (WARN_ON_ONCE((info->flags & VM_LOCKED) || sbinfo->noswap))
	if ((info->flags & VM_LOCKED) || sbinfo->noswap)
		goto redirty;

	if (!total_swap_pages)