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 60DE7C63798 for ; Wed, 28 Aug 2024 19:54:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D28B66B0082; Wed, 28 Aug 2024 15:54:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CD9236B0083; Wed, 28 Aug 2024 15:54:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BA0A26B0085; Wed, 28 Aug 2024 15:54:57 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 9C3476B0082 for ; Wed, 28 Aug 2024 15:54:57 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 440C4806B3 for ; Wed, 28 Aug 2024 19:54:57 +0000 (UTC) X-FDA: 82502707434.06.557D6E8 Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf10.hostedemail.com (Postfix) with ESMTP id 9C9BCC0003 for ; Wed, 28 Aug 2024 19:54:55 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=Q7RpdKxA; spf=pass (imf10.hostedemail.com: domain of akpm@linux-foundation.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1724874851; a=rsa-sha256; cv=none; b=OKsMpgsUMalD646coXKRDePPfGXR/LlJ2cbQNPaN2kl5icn0GEVOqdTPOLTKcYw9zoxGql Vv73u8IXkg4NEbFPHJ1kYOQRwouMDafwqZmqg2/lp6KQ7K2DdKchUdFKQf0YcZ4NPPmi2y 7i+HmwrvOxs1HMRTUO6eQ0A3mF6/whM= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=Q7RpdKxA; spf=pass (imf10.hostedemail.com: domain of akpm@linux-foundation.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1724874851; 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=5OkG6RQxDlp3Z35BlIhkNDINXjXncRGKaZz7qlifzwk=; b=AH73PUXGDkNATAAFc/BKOjGiFRHeN20ztFDarMffJHdhOWA9hW2KKM0Mn779yjpPa0GhGo hNJUa2Dah0Kt5di/rDftUHSH5y9UnJGrlE1SiLcNxlRu6R3M2L09s0WIS0A9+5BtlZyyej IvekZMia0sB1EpxzZZmLixDxuhNaLqo= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id EBA15A41AFF; Wed, 28 Aug 2024 19:54:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 03FF5C4CEC0; Wed, 28 Aug 2024 19:54:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1724874894; bh=5PQ7SQEmefAbgHFDU/OOQ4VO2H9KCO5DWunHTDtf4CQ=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=Q7RpdKxAAqj1G0qdFtYs0X7LHO1rnuAMCmkclmf8V7o/g0wYwd0i1MltkXgkRPtiu uZaJ5MheaMEpEJGOwVGP7tJwFNN+/i7JmIoen+1W9ExbbqJzTCxlAknXw9x2Rm7UKT Cnm5Cg9GDK9JsIzor3w2/3F0gNVabwX85AEjSxgY= Date: Wed, 28 Aug 2024 12:54:53 -0700 From: Andrew Morton To: Kefeng Wang Cc: Baolin Wang , David Hildenbrand , Matthew Wilcox , Zi Yan , Subject: Re: [PATCH 2/4] mm: compaction: convert to folio_isolate_movable() Message-Id: <20240828125453.5ef2ed8f4ba65675b79d0618@linux-foundation.org> In-Reply-To: <606adde7-44ff-476a-bd01-2141eb28943e@huawei.com> References: <20240826040132.1202297-1-wangkefeng.wang@huawei.com> <20240826040132.1202297-3-wangkefeng.wang@huawei.com> <3f8300d9-1c21-46ad-a311-e97dc94eda08@linux.alibaba.com> <606adde7-44ff-476a-bd01-2141eb28943e@huawei.com> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Stat-Signature: 59815jbkafbq3xozq5rnp1gm5brkzn6d X-Rspamd-Queue-Id: 9C9BCC0003 X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1724874895-840690 X-HE-Meta: U2FsdGVkX1+EKxfzCQYgMRxd66OzebKzcmB+CG4zhzvlgp64Sm/LUL233CmpjpYY1RzLYqXYR3bXoT3JQpx60nBCpWLEQURJcatIU+wXE856pCbimWA5zPPm+hIIfLIxNx7EqH2zpfMhm8cQ3jXh5Af18dqvQP9EOanQI8I30BdD/TdxFZzR0CrgVbVAy75YLJQAEEaKQsjWW+JSauGV0+FIKIOjz4hRxpSj6/WHRc4435gMIOIqCpM1/5k2PQ3KFZ4me6YaLQuUNkBlWGLYDwJZK66gGT/wZiDEgWXh+WxeEJQ/AI5RF6PYB1Me8wxgzM3VKnsyRzqY0Ja6A3TWnBSRArEAVHUJwNrPFji4RWlCTWVKrNb1wQx5urCpuhtz7qLnLx867NGx0+LGIGtYZd22oejvs88UxbsMNiXZooxq4jen4bCesGWps33OHI5TSD1OTo5e9rdh6LmySVA2eI6HoxkNvVAxLiyD0f28ZfmNSW4cLQ2k8l2B7z1/anpPPD+vuTn04pDsJtRyoWD2+12VxYTueSq+85Y8FeDktJgwV5m9Saa6c/N69JKfq+8LaCZebN/qkRzxdOhzXlOrCtOX+hAq/qVq326Soz+WYDRiag9DPqQy2f7Cty1IbR0AA77RLNrEhTR+A1UAhfEWCEbAZoVPIIGAwXTojjdOtFFfupm+P32WvVTvBTEfVlzvEUNcHDLX3W7o9Kl/DL4/b/VivFjTQYFEc5GwrCqg/ICWaoArnl7jqsEcptGYOnqI8B5j2QyqhtkgkdsprnkxGaqgrVdsftwMncxQJIHiiZIyeJ1r4PMTSQkBJ6x37X8p40gkuEydPVuu7+X2ltIKJLBt9mthfTush9NY3WZyR31lkKezpvnUJXcNAUn0lSr9kTgRqGvdxxjClXCEyi0CzZLvM+eQ/fZfKgy24cU+Oz61wBPwxPyM3h6d4Z9RN0hWrNcIPsr+y/QZcDMPA19 XVbdfMpp XOFCHXzaHs4Cvtltxc7JamcoH1dTE89I4wYcrcEoLvZxegLC5Mw77hRZGYKX2xTs7L5eFTvTRuEqQtHXFxr2pK2qK4K8cwo/0lcspxWWhwR1pRTtyaZXeGxa5OVSopA2yMMYFN0tnHhRRHTFq+lkDSMD7wZRu5GpTkDEF5r9TyfoKmQ6FCbwFYtPDyu12UF9I9TJyv7HMg36ahF7ieoad4/O4XuKX0qs/J7Hsgqqx38jITGW/Ln9UpVT2F5zX/46ZxqkOgVYfdCUPgrVJNyWmIAS9Tztc3a+9aBBhWSkv/yCYkkjP4Epz8fmsPu65RUGxtOnQZew1UsWTdZKwc7JkrWVTTQ== 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 Wed, 28 Aug 2024 20:36:03 +0800 Kefeng Wang wrote: > > I wonder if this is stable. Before page_folio(), it does not hold a > > reference on the page, so seems we should re-check the folio still > > contains this page after gaining a reference on the folio? > > Oh, you are right, so two way to avoid this, > > 1) re-check 'page_folio(page) == folio', but this need change a little > more. > > 2) directly use folio_get_nontail_page(page) here, and folio_put in the > following path, this will try to get for any pages, but it should be > accepted ? > > I'd prefer 2) but any other suggestion? I dropped the v1 series.