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 0F292C77B7C for ; Thu, 3 Jul 2025 02:28:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 480936B00F5; Wed, 2 Jul 2025 22:28:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 456D96B00F6; Wed, 2 Jul 2025 22:28:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 36CAA6B00F7; Wed, 2 Jul 2025 22:28:40 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 27BB76B00F5 for ; Wed, 2 Jul 2025 22:28:40 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id BDBB61244D5 for ; Thu, 3 Jul 2025 02:28:39 +0000 (UTC) X-FDA: 83621369958.16.8B951F6 Received: from mail-pf1-f176.google.com (mail-pf1-f176.google.com [209.85.210.176]) by imf03.hostedemail.com (Postfix) with ESMTP id 0F4EE20006 for ; Thu, 3 Jul 2025 02:28:37 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=Gw6AVFFz; spf=pass (imf03.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.210.176 as permitted sender) smtp.mailfrom=senozhatsky@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751509718; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=t2nTXIo+CvpirZ9A1QVaQpQOlJd4MreiW9qDAdilxYI=; b=W6Lh8KM3h8KNNuYU55rFj/Ze6y3KSlN28e36Pxd2FPvorGqkuGPI5/6j04Z5XDXNHIgCXb WSeUllcD2Lw5FFlAU6EZgu8Ps1hahpKxUv+npLnkr+mlq71QRPzEOoD1uqN4BEA/oke3dP CF4fn8SSKgGSsv6u6muD+LfKkAr7DNc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751509718; a=rsa-sha256; cv=none; b=yHDbtaMpMi53a5QRNLIvhHsbYU17BCwtxkiFFopu9shQqg4fCB16zQOVxXsWA46A8OWY69 wIp44KZluS+iTHNOkebE7HilPGhZKeMQaNQLTsYJLSP8HAlpqDMwey8/cujQfYX0NrIRpq 1m1e8aB7e8MqsFyCKu9DQwdPxrvycAs= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=Gw6AVFFz; spf=pass (imf03.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.210.176 as permitted sender) smtp.mailfrom=senozhatsky@chromium.org; dmarc=pass (policy=none) header.from=chromium.org Received: by mail-pf1-f176.google.com with SMTP id d2e1a72fcca58-748d982e97cso5076403b3a.1 for ; Wed, 02 Jul 2025 19:28:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1751509717; x=1752114517; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=t2nTXIo+CvpirZ9A1QVaQpQOlJd4MreiW9qDAdilxYI=; b=Gw6AVFFzcMBtNpD3LfrpKRxRgbmwBE1SYk4Vs2UI2QP8rh8dRj5Lxb2nVROYixXnWU Nq89RQm8VCBrG490qmKoNpsJTAmq8ZBs+aoeuUFtka9YeXpMBS6Gr37CMny1KKST0IB2 YlnXPiu9CZIgDaklC5UpfQ3Lh/HVH4np1dz+M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751509717; x=1752114517; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=t2nTXIo+CvpirZ9A1QVaQpQOlJd4MreiW9qDAdilxYI=; b=dGIgbZgCeNwZRScxSSz/IzQa+m+zRcGrUEdUbkavpLjmaM/QyTteKlR1RRdJncinWW yU7Dmxa7EBC3he1nvBYgWJ2tDbE5C2z11KSn4ErMWC5GtcCM+lw2CfC9nDLyyTYAYQpU 81DZNpbH/R1uPka+/8YiFDZL84ZlGNxlnqdanBS5GOJ9pBy1GyWNyTmNRP+/IG3d418Y JAQinyi3kGMiXavooXMg+nHmOwZndgozkMc1xZw17egFpg2f2unXbuN745LLV0MOVTHZ QQ+7wtgVjyuC2HvXVtxjhaRA2k0bKJJAQDROdFlF0XWEZfCTVtUKVFteEMVk+q+dJAlY YbfA== X-Forwarded-Encrypted: i=1; AJvYcCVYH5F7tRWu1e4yn4LSh9AbWCSCvo8qBvBTWzAyMQnBVpP+VVeobBqgeIXpRk9hpRtnmZPUM7ksFQ==@kvack.org X-Gm-Message-State: AOJu0YyIsAOT3oFSS1U3r10QNIz27GVweCoBfCuUzsMRnsepjftuGI9n cd7Lw/zxdAP01VMQ4vcAAN3KkGrpQAXgEk0ZclX6Th1w3A+lA/YgCv28A4hx5XECWg== X-Gm-Gg: ASbGncvoaQs4iYRikaQRxJtyEgMHSpLLnMCHOxC3Q+VUkwBnEbjJtefZR/ADP/E9T0B s3RabZXvDBV97kbnbXhjKwNkYmG1j8pMtWoCLaHJLvnXyBkMkHf76tTro5J/0rwjsC6Y2sSIiMs NkZRMmKLL9TPmXkrMIG6d1rTTY2ciFHhb9ONE1BPOVf6qC17/+QmtVcraURMo8w5AgdTuX2VqVZ 0fpAMZasHPeU1vwZRWGKQMG8elcYD+MR0A07KiGBAF2UpMOmFjfUB9bUIpxTw25W98POuinMGhM FQ/TWfkkYMAG1f4vHnZBlKMQR7lUjo+3GbsoYsFPkTq9VrSxpBbK5ni5GmcEqLYJ7w== X-Google-Smtp-Source: AGHT+IF0mvA6yS/npwsiNYiL0/8VVavPM/4qMbTse5ZctfFIAIwQSgruKczXUi/oxdeocj+35zKyHA== X-Received: by 2002:a05:6a00:3d11:b0:748:de24:1ade with SMTP id d2e1a72fcca58-74c9980d533mr2410295b3a.7.1751509716701; Wed, 02 Jul 2025 19:28:36 -0700 (PDT) Received: from google.com ([2401:fa00:8f:203:8e3f:7c33:158f:349b]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-74af541d23fsm15895056b3a.59.2025.07.02.19.28.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 19:28:35 -0700 (PDT) Date: Thu, 3 Jul 2025 11:28:23 +0900 From: Sergey Senozhatsky To: David Hildenbrand Cc: Sergey Senozhatsky , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-doc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, virtualization@lists.linux.dev, linux-fsdevel@vger.kernel.org, Andrew Morton , Jonathan Corbet , Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Jerrin Shaji George , Arnd Bergmann , Greg Kroah-Hartman , "Michael S. Tsirkin" , Jason Wang , Xuan Zhuo , Eugenio =?utf-8?B?UMOpcmV6?= , Alexander Viro , Christian Brauner , Jan Kara , Zi Yan , Matthew Brost , Joshua Hahn , Rakie Kim , Byungchul Park , Gregory Price , Ying Huang , Alistair Popple , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , "Matthew Wilcox (Oracle)" , Minchan Kim , Brendan Jackman , Johannes Weiner , Jason Gunthorpe , John Hubbard , Peter Xu , Xu Xin , Chengming Zhou , Miaohe Lin , Naoya Horiguchi , Oscar Salvador , Rik van Riel , Harry Yoo , Qi Zheng , Shakeel Butt Subject: Re: [PATCH v1 12/29] mm/zsmalloc: stop using __ClearPageMovable() Message-ID: <5thkl2h5qan5gm7putqd4o6yn5ht2c5zeei5qbjoni677xr7po@kbfokuekiubj> References: <20250630130011.330477-1-david@redhat.com> <20250630130011.330477-13-david@redhat.com> <757cf6b9-730b-4b12-9a3d-27699e20e3ac@redhat.com> <11de6ae0-d4ec-43d5-a82e-146d82f17fff@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <11de6ae0-d4ec-43d5-a82e-146d82f17fff@redhat.com> X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 0F4EE20006 X-Stat-Signature: zwcn44ksefx1bdisprbrhjgumpqb4dwn X-HE-Tag: 1751509717-649085 X-HE-Meta: U2FsdGVkX1/K4nFKxEyUP2EoTqInFrlI7yo9bA50SP7ju6XNIFQnBUC16Y3UJj5OMWuBuwDUFN/DsRVBrPI3C9+gCoVByqw+O1OjZLVV6Y/vi7JMnYhGwROwU0jJc61nwdhwqzWkld60d5NJUEJ7zwzKILCX+HKtc1NM9+av0k5k7iaWuYuBWPRQ0XoHTDIXhIx5KdYcxiCbm9RfA141Xe+7YoGFbiqxPx4sf8RjrI2boGV4FBP0yysnZmD/m1RX5M91U1SOO3DwJghY8Cg63CD7NN4t2hN08SFZexrbgO2f7x+3vM1OhbpRmw35akZUYekXNGbk0elHro9jdgQA88GHlRfSl5JLMmW45KA2b2klhx13XdgZwuGu8IBJZSN6xUKcdFlURulJaaZDfKtwl9UkqZ8vn1yAYl4XbzrOtG3cmBMyZ5yijk/f/wTrjykB5MdUSiAEPHeWLfctnna3Krch5CPIupCzoTEuNZWZ05zpTe/AJ26BhTe4EXTGlKV8PKeIqp3bWd5p2ePZ/PpUijjIZqOJ7fDFT/ub5ZBXwmt+YNB8EexL9pG/n+FE75ekfUQXF6B3b0Q5L5nuDYON44tsc+hd3Rh/QvTipm7I8YhO2htzH60Ka47VujRp9Ofc1zhD7pQD3p0FeAA9RgGrsY+MVLtLDMlwJkkAOEocSdXp39brXjpjxaYsNX0XohToyQNHjV3U5Xw3u3SGE/bEnya9OYTcYKzwjehaqKo4aXhMVN0uN67qIq8515s2oMXPBUCKuAxf93dClap/kSIm3cAcBeKVCZ/mAWAr2hZnpK+xkJ61W6/dLnNen2OEl9187XFFd+QNZgU+of2NezW9fM7GWEIwONqK0o79EJsQXHC+WK+Gy5RJwV6ASJ/6ZKfdvqw9s+xtUeY8WCttZeojESxZKxcEmP5nMCf7JQZDdFWHJx9dCk/SMUP/94esgkCApr3d/xN+WFQLeyJM9JM qbKyxJGf cb5YE/GgWKLwgCpfGSw6SB56LxT2n5oW+Ai7xruHNMuk04Jyza8Xx92BOOIlVPErxWjN4TV4ffHMSPbkcOgXdyBo8KjlmZpAt35MD6w3H1uQc+DT11oK87F7iG+gEqGKmXAb2QlSVInv4hA8= 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 (25/07/02 12:55), David Hildenbrand wrote: > On 02.07.25 12:10, Sergey Senozhatsky wrote: > > On (25/07/02 10:25), David Hildenbrand wrote: > > > On 02.07.25 10:11, Sergey Senozhatsky wrote: > > > > On (25/06/30 14:59), David Hildenbrand wrote: > > > > [..] > > > > > static int zs_page_migrate(struct page *newpage, struct page *page, > > > > > @@ -1736,6 +1736,13 @@ static int zs_page_migrate(struct page *newpage, struct page *page, > > > > > unsigned long old_obj, new_obj; > > > > > unsigned int obj_idx; > > > > > + /* > > > > > + * TODO: nothing prevents a zspage from getting destroyed while > > > > > + * isolated: we should disallow that and defer it. > > > > > + */ > > > > > > > > Can you elaborate? > > > > > > We can only free a zspage in free_zspage() while the page is locked. > > > > > > After we isolated a zspage page for migration (under page lock!), we drop > > ^^ a physical page? (IOW zspage chain page?) > > > > > the lock again, to retake the lock when trying to migrate it. > > > > > > That means, there is a window where a zspage can be freed although the page > > > is isolated for migration. > > > > I see, thanks. Looks somewhat fragile. Is this a new thing? > > No, it's been like that forever. And I was surprised that only zsmalloc > behaves that way Oh, that makes two of us. > > > While we currently keep that working (as far as I can see), in the future we > > > want to remove that support from the core. > > > > Maybe comment can more explicitly distinguish zspage isolation and > > physical page (zspage chain) isolation? zspages can get isolated > > for compaction (defragmentation), for instance, which is a different > > form of isolation. > > Well, it's confusing, as we have MM compaction (-> migration) and apparently > zs_compact. True. > I'll try to clarify that we are talking about isolation for page migration > purposes. Thanks.