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 5B9A5C3DA4A for ; Mon, 29 Jul 2024 03:51:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C5FD46B009B; Sun, 28 Jul 2024 23:51:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BE9086B009E; Sun, 28 Jul 2024 23:51:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A89F96B00A1; Sun, 28 Jul 2024 23:51:22 -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 8D25F6B009B for ; Sun, 28 Jul 2024 23:51:22 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 364821A0311 for ; Mon, 29 Jul 2024 03:51:22 +0000 (UTC) X-FDA: 82391415204.18.9F86C28 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf30.hostedemail.com (Postfix) with ESMTP id A134380003 for ; Mon, 29 Jul 2024 03:51:20 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=oUoxZGvT; dmarc=none; spf=none (imf30.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1722225041; a=rsa-sha256; cv=none; b=RrWV7yIzzkZ19nzCJSYoDGQ5GViyAUe/xmErkC1JlQV5frdDra9hqTMCGxd5BfTWNpHJcl n6BnVH5eMtosnLPzMnripRalnJ1yRo+IUEaFm9IHp4bAlFszhtIaWx7+tF4bG3X9LcCNvq O8xdsy7usiNSaDt1Ul6r+aScp9GTeqc= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=oUoxZGvT; dmarc=none; spf=none (imf30.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1722225041; 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=yAJ5Bm9rr84H9SSEudLui4/PD79oow3oFLakZDURc/4=; b=f7+EFTxEf8Qg8sSF7pBAnIv/oVtgAjEpxuy6IIPSt+cyskAd6bBcYYgpiAtMbPWZcZAo19 uJbISJLNY1niagYi4QyYB8oIIhLYyecUPDp74ZGT/da25nIlwAzF2ZCJOJ12J6cOoGeKYV MOjpnAzM7iS0k3N6NuW5RvOLNoeWgFQ= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=yAJ5Bm9rr84H9SSEudLui4/PD79oow3oFLakZDURc/4=; b=oUoxZGvT69EmvgCWAJt3LNCltZ W5hCcF6P0/uYLx+QC78e1zrcq2iRf4jJbfIcYdzP7/tbIl4KxIzaJjlUiKnQtYmXatAYhrf4LWjod v1ATEaTPmsgkltgSLiYXPwCZiR7BFHXDCEG4jNqmZyLniWE39fsfd14A6pfdGF7uOr5PQOQGPhV38 aHHceC6XOHDTAQfikenOFvCHgpN3jVsRBMkrKT1Pw8afFbdPh0AGu8en1InpEjPfS573yz4im+0/L eZJiTjZ5ihxhj6//mkvnkT9vAf4HjOjFCWa9n1MIalTT41wMN6EBRNYushvR5oOLJ8oSc5VEwIjnW DrVvFmZQ==; Received: from willy by casper.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1sYHPf-0000000D7yD-2rAD; Mon, 29 Jul 2024 03:51:07 +0000 Date: Mon, 29 Jul 2024 04:51:07 +0100 From: Matthew Wilcox To: Barry Song <21cnbao@gmail.com> Cc: akpm@linux-foundation.org, linux-mm@kvack.org, ying.huang@intel.com, baolin.wang@linux.alibaba.com, chrisl@kernel.org, david@redhat.com, hannes@cmpxchg.org, hughd@google.com, kaleshsingh@google.com, kasong@tencent.com, linux-kernel@vger.kernel.org, mhocko@suse.com, minchan@kernel.org, nphamcs@gmail.com, ryan.roberts@arm.com, senozhatsky@chromium.org, shakeel.butt@linux.dev, shy828301@gmail.com, surenb@google.com, v-songbaohua@oppo.com, xiang@kernel.org, yosryahmed@google.com, Chuanhua Han Subject: Re: [PATCH v5 3/4] mm: support large folios swapin as a whole for zRAM-like swapfile Message-ID: References: <20240726094618.401593-1-21cnbao@gmail.com> <20240726094618.401593-4-21cnbao@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240726094618.401593-4-21cnbao@gmail.com> X-Rspamd-Queue-Id: A134380003 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: n3zmc3ozuap3dsysqp3h3akr9wt4488b X-HE-Tag: 1722225080-149731 X-HE-Meta: U2FsdGVkX1/evFQeDV3rawNwESRyjWp2d/4IgmTPXOf2yppgpi9c9HUtBpm8ghEOEgDJnwP3GNA/zoFKN8S4voYPp7jeDViXR0NrzTqNGDFZ7H/6bjCk8Q/3vUNV0+Fr6pmIx4bbb6+Rmz8gzg8nXO+nXuijIX5bxeLVepZWDiDte2yIqkfKSuc+xA6BMMi0FabwkKXkrK5/I1ItRdoAmmpClvztSCd7I/iLz2210NxW6jQDTrBm6uTgxl89aaC1RMqDQWm/HdZcXkfx++kj4utqK+9R57FkXudjCxBEdBUJj7+e5CF54d96GZUDprFnpD6sArwcmxbwYKGkn1vXnPLw54oL6D4wIH6WHmzbWQMcxGsuN8fywh7l8OphWzNtCIWPv9h1x0+tqlmsLRD2roB5SdEiuRR47ZQgUHsN7GFpT9wWe6iBcsuooJOTCAVcqFH7J+6SdWUwCDLTA2Imt3rqnl4fVRhq17c7+MiZGRaX7Qoxou2fCMBT84aVLVu9swim+rRJk9O0SrvFnmz3MeSH/LWCmcMReQo+0Z2QQd1v9v1FJgLyRmFcx9NxrXJ/bj+ASTAHAkKNQVWXc1BlF9HuwqzupwM6hct8dgwtuhDjugXSbyLVO/TNq8OYn2TQE3bbvF509t2UMXGKHZ4Djczb0XCIz2KUlOqkWXX4414p1Zg+FfrMyuqibgYsRrwSlsc+kjN8fXZdMZWxj3iZ6s9otKRoC03Cjps/wBnprGROBrle7MLLNQZN5hwW7OcfZew9h55eawEImQ30gZojNAn3Scxi6aQNPNBQF/91PEl05rgm3h9ge3j667TFLfRdEg1VrwxsjBU44GxDob+NpliDDtoVyy5hm7d0AuJrEx8vSSMyxIPekppTe1m65mGCAx36LbQp45oDUzEnOFZRu/WOslh9PFibqwF3ZKvzUSn2WTgAsIYtq51+eIyNFTkT2S6nH6XrlUPH6KfQ4tM 5pPGrF8p 0Xat3SXDeC4SHJV1as65BO9fN3OAmipQik8ieCVG5E6AEy7fgk2MjZ2FEpfrFz3uAT/h/zzWSYPQYuLJVzK/fxx1lAUWeG99hKnffAxInJGLzYyNz9RfHqoxNFsFwP+Rjn+e/+72dbqr/k6Kt6NisyYCrjxn+7bb5DG4hg15s/sAT5Ztg2YL2jW+aYYM7u07IIBdFbdI1H8hCGng= 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 Fri, Jul 26, 2024 at 09:46:17PM +1200, Barry Song wrote: > - folio = vma_alloc_folio(GFP_HIGHUSER_MOVABLE, 0, > - vma, vmf->address, false); > + folio = alloc_swap_folio(vmf); > page = &folio->page; This is no longer correct. You need to set 'page' to the precise page that is being faulted rather than the first page of the folio. It was fine before because it always allocated a single-page folio, but now it must use folio_page() or folio_file_page() (whichever has the correct semantics for you). Also you need to fix your test suite to notice this bug. I suggest doing that first so that you know whether you've got the calculation correct.