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 B0A03C27C79 for ; Thu, 20 Jun 2024 08:26:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4459E6B026C; Thu, 20 Jun 2024 04:26:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3F4946B026E; Thu, 20 Jun 2024 04:26:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 30A616B0272; Thu, 20 Jun 2024 04:26:44 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 12F756B026C for ; Thu, 20 Jun 2024 04:26:44 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 6E03FC0B36 for ; Thu, 20 Jun 2024 08:26:43 +0000 (UTC) X-FDA: 82250585886.09.78B73C1 Received: from out30-101.freemail.mail.aliyun.com (out30-101.freemail.mail.aliyun.com [115.124.30.101]) by imf05.hostedemail.com (Postfix) with ESMTP id 669B210000C for ; Thu, 20 Jun 2024 08:26:40 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=KwPjxEsz; spf=pass (imf05.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.101 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=1718871996; 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=ygC+TzlChiS7e/5qCa3pXxwNm9uFHomfKyMe5wbEsQY=; b=CNHXM9TjySeoBpKEIZwytc3DDKK1JkFsG/12+/Gb6UDH8VuoMDzxr9uFwy56zKuJcWJv9M 2T/AMg6LqP3xesy6zFFeZZJ3D7vqFGpiu6zcDkyf9Xr4+CqNVuQje+YsdjweHguytZXakE YRi0Efrd0kA92o12QdNzt7hIzJXPTsc= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=KwPjxEsz; spf=pass (imf05.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.101 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=1718871996; a=rsa-sha256; cv=none; b=QE7Ean51IHFXDx3VuNZDfMBaO1pdOJcXP6WFROHBQHEU47HpSYdAShIOwnH2QtuSYTqypj CKS6mpRR9NWCxm6VXw0DrHcHkxqcPUwn6cMFT0OQB1SbgdWBfXN2bUswS2GVQlnQdMsSCh QE2oC4IfM1e9M8OOOq/HsBV8DaDHBIY= DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1718871996; h=Message-ID:Date:MIME-Version:Subject:To:From:Content-Type; bh=ygC+TzlChiS7e/5qCa3pXxwNm9uFHomfKyMe5wbEsQY=; b=KwPjxEsz6sXh8ovh3uPVQytTdZQYYXWN1oSD78UnJ7i/yZiLihQAJsjOzSOA0qxbt2+9BFPgI3yuCtVFMeQVAJ7eA5tvlLvx6MhKe7fTNBUdj9xzgtHm2ju9eH1eL9mSCxzW/Fdck+5kfd5nzGEZmnzc1o2U9Z7AHpk4pdEZfFA= X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R101e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=maildocker-contentspam033045046011;MF=baolin.wang@linux.alibaba.com;NM=1;PH=DS;RN=17;SR=0;TI=SMTPD_---0W8qePrm_1718871994; Received: from 30.97.56.69(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0W8qePrm_1718871994) by smtp.aliyun-inc.com; Thu, 20 Jun 2024 16:26:35 +0800 Message-ID: <2d778151-9b8c-4be8-a4d3-bafcc1f09778@linux.alibaba.com> Date: Thu, 20 Jun 2024 16:26:33 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 1/9] mm: vmscan: add validation before spliting shmem large folio To: Yu Zhao Cc: akpm@linux-foundation.org, hughd@google.com, willy@infradead.org, david@redhat.com, wangkefeng.wang@huawei.com, chrisl@kernel.org, ying.huang@intel.com, 21cnbao@gmail.com, ryan.roberts@arm.com, shy828301@gmail.com, ziy@nvidia.com, ioworker0@gmail.com, da.gomez@samsung.com, p.raghav@samsung.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <413866f2f2d996cfbb5c906467b36c96b1a82e2d.1718690645.git.baolin.wang@linux.alibaba.com> From: Baolin Wang In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 669B210000C X-Stat-Signature: t5pc5so9qi7dc1ckifm1zne138jyhpu3 X-Rspam-User: X-HE-Tag: 1718872000-575409 X-HE-Meta: U2FsdGVkX190YOYgnf+qMxpB0CJ/pSZN5MzTHArQdW30e/qlGKK1ucbSR8fd/G80uxPXugoVGDfrvaPSErBtRYeA6D4FYzG8IrViOzGgBHNa474Ef0DtUvmXvjNF6weqmu4vE8moH9GnWMrVYScbiSSKgsZ4/aO722uO3lRJCjdBQbzhZ09yuLRZdA7+WugiTh8u+xgb4YeiYc43LFg5XCQ9xcVRb5xBysU0Kj9UEXfd7MYD91tQM/yb63C9HVXz0A8ZzyMq4MNBmSkvxPgfBtcPpeAMH3zkBiePlWmV3HxHth6MSUDBmqtD0AG0cMYmTngKt7sQ4YZHb6JDM6RG4bL7fJAWuVX5MVKhC2/2/hhC9B2PDj9ynSQ/N9+CH9cgpgBMKKln5R7RBvodMfoAdffOP5rTL5OJnPfa5bMwjBQkdlM+hki22o4+WeOsxURlJSItFaTfRIYtRC+1Lt7aV0/En7+hkDxk3g3GjoboJSyW8awk7AdMUxQKMzXRVlXViMMSPAc8wEUXkRajFcxc5YSbmXYmSUT7V+nAIdoA70YQ8y8eSMcRUHetazh6MGGWmSeyAjw3ssC7wz3xTM/eYWgKyJUYkaLzVYS7QygeQlVvZqUqYKeb7XSFR012vNFRqYbk6liJJQ4FVfupXZ5Y3EgTuJT8J2lrM24No8y8yzKTQulE/VLY+daw4n/o2cOkXTus5BS1XvtCNiZ+PhD6yvXZpKgVOR6jEWotZE6NVF9OmYGyakDKdTk/ocPm67XoLcknFfPusiPEu4R8+amVXNhm6zFmOF0dSTYgVbl7rS4X62ZhElwqQIe+F7li0LlA7gyyJPKkIIt+9BuAs+suP1R03XsSPR7wSmRnPJUjLQq0apq813D6nzpKmmXtRpDJQIKBGkqR8cyprimoEN8cCQIR1tGIm4zMYb1DAfC5Kfn5V5pkQanxwt9UfIsquVzFj84zTODxcW50ek8+kyg 8yFkfkif /Y+bM2g8/Wxvl7FOj1HhNW7dAwnnXz8Qw1fxodEsvASJwXWI04l4esCZUK9CsmxQ3xQZzyRef7tRnfP6C/Uf5xx/FIAgYOM/wgW8+CbO27hgbxuyk+WVd9BUy4LVUbH+TCTE5yOFOpGj3Q4Vib8wfaxallD7hEAln2cBA7mnXU8j+9c0J/sBn7ZsGMBAQmbMfzYlpDermajlwNo34ryIv3unvhgbepwLTJufIW+XrbRL7fQ2Z9+H7/3Lv8yQIDEmB0CMfdM+9DNcE2W/WcmKCptMGZJX6Ramyxy5a/CQKa03yzi5R1FKTi5dWlf4PNq5HwqkYd+sYgK8VeZ8sdzKpwjIeGg== 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 2024/6/20 14:12, Yu Zhao wrote: > On Tue, Jun 18, 2024 at 12:54 AM Baolin Wang > wrote: >> >> Add swap available space validation before spliting shmem large folio to >> avoid redundant split, since we can not write shmem folio to the swap device >> in this case. > > We don't scan anon LRU unless we know we may be able to swap. Even if > there is swap space, we may still not be able to swap. See > can_reclaim_anon_pages(). Right. Another case is MADV_PAGEOUT can still split a large shmem folio even without a swap device. I know this is not a common case, and I can drop this patch if it is less helpful. Thanks for your input. >> Signed-off-by: Baolin Wang >> --- >> mm/vmscan.c | 8 ++++++++ >> 1 file changed, 8 insertions(+) >> >> diff --git a/mm/vmscan.c b/mm/vmscan.c >> index 1807e5d95dda..61465f92283f 100644 >> --- a/mm/vmscan.c >> +++ b/mm/vmscan.c >> @@ -1237,6 +1237,14 @@ static unsigned int shrink_folio_list(struct list_head *folio_list, >> } >> } else if (folio_test_swapbacked(folio) && >> folio_test_large(folio)) { >> + >> + /* >> + * Do not split shmem folio if no swap memory >> + * available. >> + */ >> + if (!total_swap_pages) >> + goto activate_locked; >> + >> /* Split shmem folio */ >> if (split_folio_to_list(folio, folio_list)) >> goto keep_locked; >> -- >> 2.39.3 >> >>