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 0E219C41513 for ; Wed, 18 Oct 2023 23:01:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 87E026B00A6; Wed, 18 Oct 2023 19:01:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 82E416B00B1; Wed, 18 Oct 2023 19:01:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6F52E6B00B5; Wed, 18 Oct 2023 19:01:27 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 62A966B00A6 for ; Wed, 18 Oct 2023 19:01:27 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 2C2A8A046E for ; Wed, 18 Oct 2023 23:01:27 +0000 (UTC) X-FDA: 81360105414.10.E0E32DA Received: from mail-pf1-f177.google.com (mail-pf1-f177.google.com [209.85.210.177]) by imf18.hostedemail.com (Postfix) with ESMTP id 4CBE11C0003 for ; Wed, 18 Oct 2023 23:01:24 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=CE24gvyd; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf18.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.210.177 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=1697670084; 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=VeBSz/e8uYkWV3uKMPbuMCCs2Qe4sufjGN1Hon5hT9Y=; b=7O0cnshpdtk2MAkBHR5akqC2+Ys1jMz3tg90Tj4dBKKK97p9Tt/CWYfKGX02rxn0a2KjBu D4TFifLAHWEBDknYzaOY+vFkzcGXAKkqj5mKXo6kmeqHaTuTisZn+ka4F6tauCjFrmfl+C n8bPbiZhchHyGJyH5uHv0wkTMT7/Lkc= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=CE24gvyd; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf18.hostedemail.com: domain of vishal.moola@gmail.com designates 209.85.210.177 as permitted sender) smtp.mailfrom=vishal.moola@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1697670084; a=rsa-sha256; cv=none; b=RUCSN2+QjIjgPVdNHMKy7Z7KDJ5Ix7DfP8iZcx9uIwOq4EDFg5CbycOxk39AfI/cHduqie IwGnYvIG3m4Ivtn2KgKoLWDUCWcIqgpui1ZAES9Y5WyyK0u1teztbmGzWajWYOnv61rsqo lgbsdUUzyRIpHShwZ1m7JBSf3Vtbdwg= Received: by mail-pf1-f177.google.com with SMTP id d2e1a72fcca58-6b87c1edfd5so4203659b3a.1 for ; Wed, 18 Oct 2023 16:01:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1697670083; x=1698274883; 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=VeBSz/e8uYkWV3uKMPbuMCCs2Qe4sufjGN1Hon5hT9Y=; b=CE24gvydis+Z9OYfdN65SEvSn1sO3fpMcr/TAkYBExvmFroBk7Tdw7jxRdiiecqW+G 7t/7jrER+8BOn7s87yY845Wd9jFFyX0ZGadl+LyVEgvV4vD/2yn3RCULMq5ba3uLTXFy c3kIlVkUrax3RRA31icjAMyk2rF1EcA7b4+R5IYplqvx5tSOJDGQBwP/LKRaYUjsp9fq L1X1VGPEJH33fXSybu/pys0Hv0kTW/AzkI6QDZNUU/ca6EmjcV6Cqfbu7FSoFg/wgXRJ S9ZNADwPBrQmMgYFlLdVgH8bZp1Lh+HCR8F+h2NILFzwRsphwhMzJ7o8KJ2zmnnOzsxA Dr0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697670083; x=1698274883; 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=VeBSz/e8uYkWV3uKMPbuMCCs2Qe4sufjGN1Hon5hT9Y=; b=ZyOxBsVymH1dB2VbpixiscJzVee7/26QMx8kNdH4jmUUvLB/524m/jiYMjzj05MT6I RCOz4pZekDQdF0+mGBDjoafMnOuAqoX0yh9Xqccu/9e1CDo0Y72xG5HOt7P+UNsfvuR5 /D+iulbnHeQlD1AUU32qGdWcZrBzDQ+yRzdT9pXCfv6dqCrAvH5NmJ5uB1OY3E+kj321 8sV73a9wiHHVpQEn4HgtfvVXljSay/6PzBFxW6jo8d5D1T3qnKpQ4OUXFt1lzYtZhHPO f5TRQNP9pVN07Lqg9CniLRJbBCmVD2DAxa1wxVajEE6GR4/CtcOYRbLaiH0B+/P4jp+G 1J1g== X-Gm-Message-State: AOJu0YzqypQFn3A2uHA7pcp5uYl7tE9/YySHHeTXXEMtjcYNSEa4dJFS 7CL/jD9jdLFvb+QCmbr6i3ihPaTIfVA= X-Google-Smtp-Source: AGHT+IHjKoxN0D8+FMnbEY+Wlmj7R4d03KYlxj2pcGC3jDKRtDimoGB73Rodd3bR5eaVLdUQVKixSw== X-Received: by 2002:a05:6a20:1604:b0:15e:986:d92b with SMTP id l4-20020a056a20160400b0015e0986d92bmr627175pzj.16.1697670082760; Wed, 18 Oct 2023 16:01:22 -0700 (PDT) Received: from fedora (c-73-170-51-167.hsd1.ca.comcast.net. [73.170.51.167]) by smtp.gmail.com with ESMTPSA id b1-20020a170902ed0100b001c3e732b8dbsm461189pld.168.2023.10.18.16.01.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Oct 2023 16:01:22 -0700 (PDT) Date: Wed, 18 Oct 2023 16:01:19 -0700 From: Vishal Moola To: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org, akpm@linux-foundation.org, shy828301@gmail.com Subject: Re: [PATCH v2 5/5] mm/khugepaged: Convert collapse_pte_mapped_thp() to use folios Message-ID: References: <20231018203213.50224-1-vishal.moola@gmail.com> <20231018203213.50224-6-vishal.moola@gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="k9WjaocPDLBP3aBR" Content-Disposition: inline In-Reply-To: <20231018203213.50224-6-vishal.moola@gmail.com> X-Rspamd-Queue-Id: 4CBE11C0003 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: y6xiafbn8orwf5fdch1djropb6xbmtfs X-HE-Tag: 1697670084-587126 X-HE-Meta: U2FsdGVkX194uYFudEkaxIzlzGxoEiGCIhG7okhhcKbOYs5lxHSOaUydAU0awG6SITnP8FEp7uUFsdADnZoTywi/MbZW/9CSsGM4imF/5afYz2WY24erOG9esKTS4zreF2QKXASS5lP1ghnjGFdbSLpYpPgi5Qo9mLwERdhKa99R435dCefODongSTPrdDWYaEY1uyYKEhHOfz9qdd5n0Go0Lyuqb8z2U8RjywmtegFd97n2Y9olCmWVy0LTblsXhX/nMehIIsy7+xU+GCWbembNnjhn2bSvmqN/pVzL93la8sQLpw3/nw5jNZo13hX775vpKeae09X2qU7wsG7LUIRNs+6tp/CXkeJiji0qrz2+hExWQpCMiJzntFGiPUOdlSJtk0AQ/yhH8saR+euaJDIYsNutPQu5Uv4OvtjkXZkzZ9JlMFd7JNo/EYp1bRSg0sBehDwioM8T91qve089aHs1vHpbPH5SKY7qROl3Jlm0kV+1hgHq5HPE+d4lzdxnkXNhCEAgdKIsdV9Sbi4r6M5DHs5zLvLpSk9LqsvABpwK8xpR3YWX6desZGmEeof3fF86Gq+rPDceMHKaE2z+F72RfpilbVxq0CSw027j6V0YEIZ6r6vb6C+asYGpb4cdS/MmLN5gIEUjHR9yI3QoTE40EGAM9nqU1tZhLu9j/iGOpH3C4VayBn9QFUfiJASNWm9zhl1Ue2uotMDZSVDYcUn5su4TS9CzkI5k885b6kn7oA2uGl9nCAb9iBnH4Ou+GTcHSWLlFdEjyJNDFZqiCBm0Eaz52Sm+J70BhM1NsxKhLqhc3CFN9AwtdFhh13ZJnw4OUZfST38bRoRVYW8sDw1BEIvyozBAHJ6kwpj6OwZgAQCqxtabYGBUhlJOlWmI0b1jPULjHfPObZXkHWcwOKViC2wVFhddBEByla85bBWu1Az8MpGySSCanwwCMpevEGn7U92t5h+jIReMeMV JubRm90k yCcdjD8u8dKddTZ+JQ4/gvIfYP4N3LD4D+ROoyy6mBHqLrA5Oo/P5DdnSDghRDByVrwmmGcXcMnGzNvDTyIsKsh7qvUtK+LaXvwDrsDgW+1VaqjMFK3JEppD6a3hiLxXIoQAweTVyj+RSpO7tNGbbpGuzLBflDh10MOTrVgA606jZDWPNYcHkYJa6XR0+cUNsWnf1gsLhAUmIr1dn9artHCmNVr4PKI8j6t2VfJ+7gWpVDRAvpnRVAHxBJW8VgPbMuMRftnKNvWkk++3oIs6tfL+4SPgHaACoz4MDOldidx2pldL44594cyoT5NMKdLlXraZJHsy0ltRUEZ/DO9O4B0Tov2QB5oAy6vQJXWdehw8CSx5TP4HUISYzQv/xltT8YbXdbdZFjE82gb0Y3M5Jqq3XQsuTZUatXEsBqA9XbzFPg39dxYdVRPuvEegz4+6ipAyeC3Ra/K4xsbuF2Km1svCORKkfEEApYhvx7KYyXeE80MHtFNJ6I1MkYlmglrVpQEq2jE2TraZSkwV3hTCr5W9hwi1V+iFx4SHE82k4vcVnny6OzJfzRZR2oT2ivBchtPLNHtROk/I1qb37LIYoppTnXb0lC7v9JBxWOtm7bTtJ+8S9+rQtanpWusLsA3U9Zjoe6fFSoVPcCAX699WwaPwNb/JgLQnx6nkK X-Bogosity: Ham, tests=bogofilter, spamicity=0.001476, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: --k9WjaocPDLBP3aBR Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Oct 18, 2023 at 01:32:13PM -0700, Vishal Moola (Oracle) wrote: > This removes 2 calls to compound_head() and helps convert khugepaged to > use folios throughout. > > Previously, if the address passed to collapse_pte_mapped_thp() > corresponded to a tail page, the scan would fail immediately. Using > filemap_lock_folio() we can get the corresponding folio back and try to > operate on the folio instead. > > Signed-off-by: Vishal Moola (Oracle) Hi Andrew, I've attached a fix patch addressing the syzbot issue. It can be squashed into this patch, syzbot tested it on v2 already as well. --k9WjaocPDLBP3aBR Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="0001-syz-fix.patch" >From 34d60af8cb66d6f582c1aeade01689e94e8a0092 Mon Sep 17 00:00:00 2001 From: "Vishal Moola (Oracle)" Date: Wed, 18 Oct 2023 14:24:47 -0700 Subject: [PATCH] collapse_pte_mapped_thp() folio conversion fix filemap_lock_folio() can return an ERR_PTR on failure. find_lock_page()/pagecache_get_page() handles this internally, while filemap_lock_folio() does not. Ensure this is checked for in the caller after converting find_lock_page() to filemap_lock_folio(). Reported-and-tested-by: syzbot+1e2648076cadf48ad9a1@syzkaller.appspotmail.com Signed-off-by: Vishal Moola (Oracle) --- mm/khugepaged.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/khugepaged.c b/mm/khugepaged.c index 94c1dd09a8a6..b944ed231792 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c @@ -1510,7 +1510,7 @@ int collapse_pte_mapped_thp(struct mm_struct *mm, unsigned long addr, folio = filemap_lock_folio(vma->vm_file->f_mapping, linear_page_index(vma, haddr)); - if (!folio) + if (!folio || IS_ERR(folio)) return SCAN_PAGE_NULL; if (folio_order(folio) != HPAGE_PMD_ORDER) { -- 2.40.1 --k9WjaocPDLBP3aBR--