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 0B0C4C4708D for ; Wed, 7 Dec 2022 21:31:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5BDE98E0003; Wed, 7 Dec 2022 16:31:37 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 56C008E0001; Wed, 7 Dec 2022 16:31:37 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 45A888E0003; Wed, 7 Dec 2022 16:31:37 -0500 (EST) 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 2CB678E0001 for ; Wed, 7 Dec 2022 16:31:37 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id E882FA0AB8 for ; Wed, 7 Dec 2022 21:31:36 +0000 (UTC) X-FDA: 80216806992.06.1BE7D8E Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf12.hostedemail.com (Postfix) with ESMTP id 1DFBF40019 for ; Wed, 7 Dec 2022 21:31:33 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=duWk3uSo; spf=pass (imf12.hostedemail.com: domain of akpm@linux-foundation.org designates 145.40.68.75 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=1670448695; 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=nPCVXffNkC18KPpY0HEl9xSe1+jNIoyqHg+KuK7XSzU=; b=gZMmsRdbZDoR00gH2D6Apf4SQM/WtKKSWjUeYe9O4/CXZ+CjWeBVJ/VkDI3oDlBjjpgnZk p7Xy4/rbe2o4ScNsXJriLfJJB65lPK7wugdMxa0NPlwRhACbdw4N6Qd0ZXWbufhAZJ/vDG OQvCOWDuOVuSmu8rYAe2paY69ir6DzM= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=duWk3uSo; spf=pass (imf12.hostedemail.com: domain of akpm@linux-foundation.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1670448695; a=rsa-sha256; cv=none; b=UtXs6+t9XVATFmaIu3+34AXvfyDanrqbqlbNBdze4m13TOScpoXkWSBSDR4KQA8F0fS/Bg v8YEfjQiY3JRvhkqFbQypydcYvgkafOHNtAmBRbny0Vm1jf+3uZDnftfSdmTmD2Nb3I0Hh n/wji5IoNXBQ1Wp6lLL5z0w+rakaGl4= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 28A5EB8216D; Wed, 7 Dec 2022 21:31:33 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 94117C433D6; Wed, 7 Dec 2022 21:31:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1670448691; bh=LPL3OejPVlN3jUCkn4XnkSB7/HgPNJ+y0UjZbAqGIvw=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=duWk3uSoQ/+JDRWzo84+OmS7DGEUMZRHi7U//pmOq5m4Dma3pmLNIjwTjVBl2qJLU XFP01cC4ByAlLh34xBFOpI6vVLL3jZL0W3VXpqSOQL8j78BAzDot0df4Qekz4bp5Qe /4/aWgC4ceI9TsMC6TxDP4WJDivghC8C6RHV7MTw= Date: Wed, 7 Dec 2022 13:31:30 -0800 From: Andrew Morton To: Saurabh Sengar Cc: ssengar@microsoft.com, yuzhao@google.com, jack@suse.cz, linux-mm@kvack.org, linux-kernel@vger.kernel.org, jostarks@microsoft.com Subject: Re: [PATCH v2] mm/gup: fix gup_pud_range() for dax Message-Id: <20221207133130.f4894372d295f99fd4954255@linux-foundation.org> In-Reply-To: <1670392853-28252-1-git-send-email-ssengar@linux.microsoft.com> References: <1670392853-28252-1-git-send-email-ssengar@linux.microsoft.com> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 1DFBF40019 X-Stat-Signature: uoejimjxrkjf81t4rpc5y8ecmfqdu43w X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1670448693-154883 X-HE-Meta: U2FsdGVkX19hfoVz/EZqThLYucelaPoo2CNyK90fJ62K9CvTMht2dLN/YlDU4IpN6TGjsHGLSWYdWRU3TTmFGFK+Vi7USQIeAwkYIfqNLL3UgwUMBia3noJ0WwtQEM+46lutRVhnYw4BBLD0k2qUY7Lk9edvXHjG+oNXmTtfcn/RWKAMAMkaoo9FZqmCJsPMRQbl32dWZM3WEHxRo8PS4OGGpn8jclv86h9O+5EUqy+rTdinduuQbNCniWQwwmKS+NkebeZFEWlD2LFVltAHnFL820PRS6dZblHdsx392t3UKhcNjDpi2yvkhY+a9NPCjRlyCzZ8mbPZNFhCa/cJJr+cmcyw/Ov+fjlrKPLeWGaEAypzv2GkrnYgJxElUcfcMBOm5Y9olKFIQPxUynDQn1rhJCYAczg6FyyDb9AFV3gmI3II1zCPjY/JGvjgOEfpmgw2DVdN+3CxmwelFXaxl4LwbvsaoaP137ucKUEEDrzOUFYqzYs5llQiP9VoRfCIipigPeDXPblR1WcIH8juRhaAzEOKthvHIuW3H09EFrkVDoUFl3QfpRqIw+t7aCmisu2dD7NdJgT/5CBNY2QfxqOBU8UfIJEX5omkzaPd2ZChwMeihwpmFRJTh7WCTLhvoytoirsQNSpt0h43gd6ZR8Dtbz8l8Myo3OE3NcDX9l2D344iWwMs760vGEg0ml83YqkMztSoIxAzY8OQDeimDs7b5nVistyJrZQA7EBprw4OUmO64u3Ay0zkk4iqOOm3RWIdizBFt907lD5J4Mp8dF9+6at44gPlogPvoaElIF35vp7dGn/LpU41WSlX/cYtBcEvLfvHwjATDf+yK0NNn3LILzNdjPzUuoiXHjazCAFbBj29Gd5V8EkYd/x7mNCuXHnD89ShEdfdHr9hig/DHV5TBpgKzSKBY4edxzKqVq3ux8zckGU6Fj2t0/a34yOLfzLdyfIsrorIahJecBg HFHLA54y TNT6vRlScCLmBPsGzNVtSGKTexttdglZoKA37YkYVGa1SrVL7+kksKpb1yvJ7XJSAOTwKnwlRyqV/RDd6cVnm17SWlyFnLkXRDGdQluFVnSFPbn7158mAUP+gVg== 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: On Tue, 6 Dec 2022 22:00:53 -0800 Saurabh Sengar wrote: > From: John Starks > > For dax pud, pud_huge() returns true on x86. So the function works as long > as hugetlb is configured. However, dax doesn't depend on hugetlb. > Commit 414fd080d125 ("mm/gup: fix gup_pmd_range() for dax") fixed > devmap-backed huge PMDs, but missed devmap-backed huge PUDs. Fix this as > well. > > This fixes the below kernel panic: > > ... > > Fixes: 414fd080d125 ("mm/gup: fix gup_pmd_range() for dax") Feb 2019. > Signed-off-by: John Starks > Signed-off-by: Saurabh Sengar > --- > mm/gup.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/gup.c b/mm/gup.c > index c2c2c6d..e776540 100644 > --- a/mm/gup.c > +++ b/mm/gup.c > @@ -2765,7 +2765,7 @@ static int gup_pud_range(p4d_t *p4dp, p4d_t p4d, unsigned long addr, unsigned lo > next = pud_addr_end(addr, end); > if (unlikely(!pud_present(pud))) > return 0; > - if (unlikely(pud_huge(pud))) { > + if (unlikely(pud_huge(pud) || pud_devmap(pud))) { > if (!gup_huge_pud(pud, pudp, addr, next, flags, > pages, nr)) > return 0; I assume this should be backported into -stable kernels?