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 76694CD1296 for ; Fri, 5 Apr 2024 21:20:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1363A6B009C; Fri, 5 Apr 2024 17:20:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0E6F46B009D; Fri, 5 Apr 2024 17:20:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EF07F6B009E; Fri, 5 Apr 2024 17:20:34 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id CE4446B009C for ; Fri, 5 Apr 2024 17:20:34 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 909321A0A15 for ; Fri, 5 Apr 2024 21:20:34 +0000 (UTC) X-FDA: 81976747188.23.6EF6C15 Received: from mail-yw1-f181.google.com (mail-yw1-f181.google.com [209.85.128.181]) by imf04.hostedemail.com (Postfix) with ESMTP id C71C040004 for ; Fri, 5 Apr 2024 21:20:32 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="WV78tR/H"; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf04.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.128.181 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1712352032; a=rsa-sha256; cv=none; b=xNBuRyj2EdHQDKPAy+mRKkjUai1Vbm6J0I51RPuXt0uWtP94jagshCleHQwaoA1eDAqw0O 4pOMZ41Q9eBhrPWFiCQ/X65lt0af1GBsnYj6gp81A8Nur1MBzFFAC70vL3Ts+S3jMSsdXI Nr4DL70BZOLgKbWMN+PT+tXq8YNjUxc= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="WV78tR/H"; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf04.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.128.181 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1712352032; 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=E7k2w8LYX+tetGTM+6BE3C5vy6XNPnsBPtIYN6cubO8=; b=bDj0SKSlzwjFP2D7pdYnGV8bXPP7Mt4bDFhkui36ZStIjkG+BseH1mow4d79L/QYNI8U4r fJG8RyPLeat0HJJBMFY+dWE1QBtTzWOyw1Pc4amEAxkV9BFXQIVWBJu60GTrOyXMEGo+wW TbSGA206LsZaF7IKyZUrzFI794+YQn8= Received: by mail-yw1-f181.google.com with SMTP id 00721157ae682-6151d2489b4so27826167b3.0 for ; Fri, 05 Apr 2024 14:20:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1712352032; x=1712956832; 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=E7k2w8LYX+tetGTM+6BE3C5vy6XNPnsBPtIYN6cubO8=; b=WV78tR/H30FGClUFlRVUsOXkEhQlsKng1Il8nasANGJr8bJiLKSUISFIk+x3gGIiPd X0TaHt7PpoKhgLu56WGVdb662wiiCkha7IW53iEBleg3iddTsfKPRpLQ9vDjFIUKIvVK 5iTOvfRbxH1tsT/ogCS5Nrb8AMndwYd6C35OcC8kl5koMHfgyfrQ/K9eBWFU4w/BG9Lq Z+XoNGuzdTTx4zUVVvoDor2T9bBzZFdLIxRPqvHrs4Qqi5QuIK3/QLV1L+ySPD9OBG8d 8FhlOc6cYulef303/DID2xvKN6TQxRG5ghtdNZoclgv/uunyEgGYRqE2ySw0XJ+41q1P kQQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712352032; x=1712956832; 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=E7k2w8LYX+tetGTM+6BE3C5vy6XNPnsBPtIYN6cubO8=; b=drGuVgUsopuh7VS/TGgZxWv99Xg5sd/qjP1Ti38aVgzMNzoZJIU1yv/0bGnYOul1d+ GGAT7SY094DGl+SciwVaSZ7mkrlIE8+IoIl3cf84TpqYo5S51V17r5UTHt8hOflh8n6Y REGgYOxK3xa9gIeLt93l5IH1WIuNKZKRls04h/Bvw062qoqHGE8yVgaKJ35EPi9qixtl Sd56p0fIW9REIt0nWHpZsbHxrzz6MTZgUqNV55DGD2XhvMexMCcOnfsJofdPUrp4pfWf O7CQdy3dE0N43wiIFaCwb9q9MHaSxU2DA0r3TfOQbcb9Y4NIFinMT8onVmHzdULixE2n l++Q== X-Forwarded-Encrypted: i=1; AJvYcCXc4KNfi3Q7Ax9NqLrf3YMieQVGujedpit1rvAhfxp7QxN8UerQit97QDOOFLutDnipuwsrwWO44/m7SW3HuYT0Kzs= X-Gm-Message-State: AOJu0Yz1b2qUVOA3kVBbG9/OgNTr4Wmem557+lWOisPSHuqOUBpZU9r5 Pq+WHIg+kw/vQ/c0lEr9VzyJbecSPPa5CsrOW0P8zSyow7CHpvep X-Google-Smtp-Source: AGHT+IFp8gojb5Rzp0SrOFNsPjZ3LVIBSJwAGasvib97p+08yNwK5D5Z/uquYh9rQg4sRJcndlaAqA== X-Received: by 2002:a0d:d453:0:b0:611:bdd:4534 with SMTP id w80-20020a0dd453000000b006110bdd4534mr2752565ywd.3.1712352031890; Fri, 05 Apr 2024 14:20:31 -0700 (PDT) Received: from fedora ([2600:1700:2f7d:1800::40]) by smtp.gmail.com with ESMTPSA id bs16-20020a05690c071000b0061431d20d83sm534807ywb.39.2024.04.05.14.20.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 05 Apr 2024 14:20:31 -0700 (PDT) Date: Fri, 5 Apr 2024 14:20:28 -0700 From: Vishal Moola To: "Matthew Wilcox (Oracle)" Cc: Andrew Morton , linux-mm@kvack.org Subject: Re: [PATCH 6/7] khugepaged: Use a folio throughout collapse_file() Message-ID: References: <20240403171838.1445826-1-willy@infradead.org> <20240403171838.1445826-7-willy@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240403171838.1445826-7-willy@infradead.org> X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: C71C040004 X-Stat-Signature: nx635p4czfq3qsc7qbke9ae3qsiuxk6r X-HE-Tag: 1712352032-747192 X-HE-Meta: U2FsdGVkX1/MD08lrsBLc2y9USuXaj/uPIWLlMYQ6TRjAvNDYPlMAAocx4HYJctPpGiLjLSX1E/ZQehdrHVIjaHejLDET7wl+VHkK5ViNHxZz/7uX6B+Ya4B966uJtAE1jzsQqwEtvnSRa5+D/l7ypxBwIeRdgtZyg0ELdknEfM1X6yqvt5LQLVOF6oUqygsE+/I0PZ8mtH94TtnFHtNWZ0whdUsg/gWMRygaLJeNsRrTrxibNSOg6Xgusur61bGpuiWsW0vA45G1dpY2t9yN6AXVNH3/fAaFR+bHglKtslPj3KKsW7hda+AvbGxJEQVWHW02+CnG0Q+Zjg0aX31vGKw92QO0CHUQnSDWOWWTpAXTBJTZqbwzsXltdOqfHkIaPVXto8quj1uE36IrIUtuYw/0KIP49zHoksLJILulqWIFXUCgVm0Ouge4p/F5burzyE5SdNNUmD9mxBeSL9UCQ6B4dpugCHYt0LaVMU6dujL9tMSxuiIT09c90XQVVGy6Ya7lgItm7HF614kNj+riPtp0gMFR6WIoZdXfombzgz3YJKcc0ssjjvWFZ9EWW6PUcxNDSNPQJrOF4EIaKLt2BnE/X1z2hCFkQSyuLeR39bqYzvVs2vxCkUOGTh2am9/hs5h8EQDsRwRuJ8/yBJ8cYWzCL8OwUM2aXCoW0sMY8XtaLcebB9L8HbxOBHLQhzcYu3RZkKnMMnpAuK8zEc5OEBmodZ6VVFF11qy5ijbHypFLNaX9tCn+RQR7MKNGQ+Qfp2SGPU96ybOoXSEPsSoVIGtllAi9l3rQXr9bCmiB3J040+07ZP3o76HBbOzuqjnyL9mbihUorVmIjMeOeePmNEoYYUhRBagBmqYIvJTildfWxGSJkDazsuvQHV0DYoOiFPZ8QwYBDto+hE6ACfUzaQ7XsoOTKMMmqbRAwGKi+DjfWPECFTRZIj9ymfVm2hI16ZUUCwD7zgG4g0F/Oz 6YPWBfoB tQCt8DjlxZ2ZrqIFSpcIgcOedM24kT0bnJYfSB4XWTGGDyMtSWSHK81R0k0SX5kenTcGZnsBcXtCuq8+APqeJJA4ddMmh5mH+kyf90735X7jl7/IRAIACk53uLXaSFHQk+6s1fyJQuC6CcweR2AAqKWoZY8nnf+hE3Eey3Vk7Ei8M3KhjerBMxQBI1fUOu+4fCC9C61LIo7fBg0TQf6g1v4KvUEoC8+qZKzsv4ZOTWdhWnrhv4aV3MkpNNkb5hQdhd6HP/9pp8ocHnEuHc54DM5Qkg2zW2G0lzjOkqU+2aiL2utq38jUxymH/7Ud58LKqzscPtjI/JeBI5+xePn7LU7SX+aBMYwp3QyiOWP3hVxyOMclJ36/bizpUDLV6ZPV7bxoz1Jl33DR5D0vpHRRngKgTSxyQSPrK0yCcT9pjbpIEPM66+AiTkfSZPSdQ8uFAHOBTU3vmWd0i5wNHnl7OmCU6jTXM1gagUs/KwDyBIMqcGwgjkpr/APLDqhuoFc7naVqd2dYrmS9JxOnofWYB9CBHGDR+1v5cBBjM5WUtLbUR3eU= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000017, 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, Apr 03, 2024 at 06:18:35PM +0100, Matthew Wilcox (Oracle) wrote: > @@ -1850,28 +1849,27 @@ static int collapse_file(struct mm_struct *mm, unsigned long addr, > } > /* drain lru cache to help isolate_lru_page() */ > lru_add_drain(); > - page = folio_file_page(folio, index); > - } else if (trylock_page(page)) { > - get_page(page); > + } else if (folio_trylock(folio)) { > + folio_get(folio); > xas_unlock_irq(&xas); > } else { > result = SCAN_PAGE_LOCK; > goto xa_locked; > } > } else { /* !is_shmem */ > - if (!page || xa_is_value(page)) { > + if (!folio || xa_is_value(folio)) { > xas_unlock_irq(&xas); > page_cache_sync_readahead(mapping, &file->f_ra, > file, index, > end - index); > /* drain lru cache to help isolate_lru_page() */ > lru_add_drain(); > - page = find_lock_page(mapping, index); > - if (unlikely(page == NULL)) { > + folio = filemap_lock_folio(mapping, index); > + if (unlikely(folio == NULL)) { filemap_lock_folio() can return an ERR_PTR(), find_lock_page() handles it internally.