From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id CC367C3ABDA for ; Wed, 14 May 2025 09:31:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6CA296B011C; Wed, 14 May 2025 05:31:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 64FBB6B011D; Wed, 14 May 2025 05:31:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 516566B011E; Wed, 14 May 2025 05:31:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 2F6EC6B011C for ; Wed, 14 May 2025 05:31:10 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 9DB275BCB5 for ; Wed, 14 May 2025 09:31:11 +0000 (UTC) X-FDA: 83440994742.30.E0E0464 Received: from out30-124.freemail.mail.aliyun.com (out30-124.freemail.mail.aliyun.com [115.124.30.124]) by imf07.hostedemail.com (Postfix) with ESMTP id 0E0844000D for ; Wed, 14 May 2025 09:31:08 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=sHOR+6ow; spf=pass (imf07.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.124 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com; dmarc=pass (policy=none) header.from=linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747215070; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=SRfQBr8tFcfh0SvdA/mIg1g7T/s8SfnIEXb2RdwapC4=; b=wimWw8T2g7PVk8XPVgvWhxotCCAv5/ArMiC78Mea/qv2WXmdG5vDGh0ncEuL/GrfqH5B+1 y7GcybQZeki/xOgXIEQjgZ8mLe/5dz/5cUBiR68DSzVtyeR5H6pIduobo4Yt1z1SYEMctw IP9tkHJR1KdMiSuSt4bosNR4WMVoiac= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=sHOR+6ow; spf=pass (imf07.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.124 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com; dmarc=pass (policy=none) header.from=linux.alibaba.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747215070; a=rsa-sha256; cv=none; b=VpyXPx3tHDH8wIezZgpsFL8B6CGOaRbaCERYkBPRTGvrkqznqvat6gxYvQ53oJLxu4td4J wndFg28JgVvFvDEH6wYAHvmlQIS8OZxHCMv1uEEL6WM5C7o7Ka5/IMq4AeMGBHGWpApBe/ VxJdhVw3ROlIt24OI3oIrEu6EaWXf1U= DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1747215065; h=Message-ID:Date:MIME-Version:Subject:To:From:Content-Type; bh=SRfQBr8tFcfh0SvdA/mIg1g7T/s8SfnIEXb2RdwapC4=; b=sHOR+6owOH0B+0ZPRQ/efOC5I+a0G49FO3Ngcof8ztrRJWPcwGbI0omRu/DDefE+acgP1uUc139S50NgLjo4XU+ivTRVHjmtnswS7RSBRZatifiBkAqRD94dOnddyPAgcMyvlz/zRmF0Pm6Ri7xvHV30BG3ihyC5jDM+6wcBVmI= Received: from 30.74.144.106(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0WalMYN2_1747215063 cluster:ay36) by smtp.aliyun-inc.com; Wed, 14 May 2025 17:31:04 +0800 Message-ID: Date: Wed, 14 May 2025 17:31:02 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 4/5] mm: shmem: keep inode in swaplist when failed to allocate swap entry in shmem_writepage() To: Kemeng Shi , hughd@google.com, akpm@linux-foundation.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20250514165047.946884-1-shikemeng@huaweicloud.com> <20250514165047.946884-5-shikemeng@huaweicloud.com> From: Baolin Wang In-Reply-To: <20250514165047.946884-5-shikemeng@huaweicloud.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam10 X-Stat-Signature: 7ip18z6n4sj96de6ujgeteqh4nu1i5c8 X-Rspamd-Queue-Id: 0E0844000D X-Rspam-User: X-HE-Tag: 1747215068-691072 X-HE-Meta: U2FsdGVkX18sG8a6xqg7zYgXVC8ksmaw5vNOjTkpQou8vJF2zv18cc+pjbnrUBRf6nRA/mNxio19HgaAQh9Lo3a34NWCk5zwBuN8qgE6wkm1O01DCNLgettdmN9zauFfz4JmoUkXVpLlyICdm9YjhIsTlMY4IKiBcDrRfmhP2Gc8/6jfi1OSLBGcUhCJkI737A0kfEnro9EWx5/V1/frC1uT6NoQkXAwbkLoCM6PY6IOVF8cGOKZJBtQtNnHuOdlUwxTgd6QLTaMlzSjXTW48TuWfsTZisUmb3Oopd3+aqvoGW3M0e/fhiCVv6GtoPmBNmyf/WqZIjJaVmewToGAiNowa8sxoMMdhnGwAY25JH9nafBUKlX2w8iStWrB/1SCMxOlIfeUYhJQx+kvnx26x+7/QhBIBjSBQOmOTrBHNKyUU9d/bk66r0GUGGOtzh7uuZf+vEaIVeaN6M4ii9BycBglJVhZShyjiz8RAU1msDNRksFrCPMAQj2H94iQNZa5nwQwL/B9fsv8ZaAR31ajXImI1Jb8c2f6/LM3HoxYthIx+L8jecxtoHZzf59OOk4cxjH/U+ovuazJ8sjMLij4PswaJZZ+C2Y6kqS9AsVQ89F25lbjUy01R04hFmJhsutv/BGM6OyLBcfiOXXapMJo89PBY22zR3hRK38/UNkSK4XtqznM0jrZYvSI1F6W7UY07ucHU8qQulmemqjFItsieE+PnGkc2mzasDxp9xi0jMyUpVJP29tmqF5KJIW58WeGYgU/5qYCZAXPFaR2iLuz7V4A9oGPkElEjuK4HwprsokjyRZFeJuv/3e7sSSBInNBmU5nuznTB+QkaD8wmbPXItiNLzX8nb3gNR8RCROrAsLrmCNkEo1FYAufyBeEPpDdFhcqBkh+AKSY+w4rTf/EkG4Q/ilpphWfWSgfCHELTHj+ZI0bzMs+dFfYxYAXmrg8nkw/XhHRtg9BgakqGOY ONdD2ycy MBPQGpBHmsVeq9DtdRQ3NXDa598TPSIcmgzzG4X5GPgj2zVSMZoZyUUJzUKY3DZEJLCS2+y3EhxA0/eEPGPArW2w1n3IXHR1eFKssJ4tm3KnEaxkb8i3kzRbsL3WNhmRRLvQ+AJfpz4jVAZScM8grcsvu4Ok8zyur73JdQrzWdgUlOvgtyx2EsUYu9ITlA4FbtQ4/BRWBdTCXC9+OZJij8worCg9lAf7Zv8n7dm9ofh3lMqr2Bnv3lWe3Wa7qzrpulgoE+2m+Wcqt9KoXTgMxWBjPPU5VKwdN0AavlPL6qNPHSI6ani7Yh920FO2e0T8Sf1EnbDQcD7zSnSTnH+WJu+9x83oAGWbgzsz1 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 2025/5/15 00:50, Kemeng Shi wrote: > Even if we fail to allocate a swap entry, the inode might have previously > allocated entry and we might take inode containing swap entry off swaplist. > As a result, try_to_unuse() may enter a potential dead loop to repeatedly > look for inode and clean it's swap entry. > Address this by keeping inode in swaplist even if we fail to allocate > swap entry as it does not pose significant problem to keep inode without > swap entry in swaplist. > > Fixes: b487a2da3575b ("mm, swap: simplify folio swap allocation") > Signed-off-by: Kemeng Shi > --- > mm/shmem.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/mm/shmem.c b/mm/shmem.c > index 0fed94c2bc09..dfd2f730833c 100644 > --- a/mm/shmem.c > +++ b/mm/shmem.c > @@ -1651,8 +1651,6 @@ static int shmem_writepage(struct page *page, struct writeback_control *wbc) > BUG_ON(folio_mapped(folio)); > return swap_writepage(&folio->page, wbc); > } > - > - list_del_init(&info->swaplist); If 'info->swapped' is 0, we can still remove it?