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 89435C3A5A7 for ; Thu, 8 Dec 2022 04:08:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CD14F8E0003; Wed, 7 Dec 2022 23:08:46 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C80478E0001; Wed, 7 Dec 2022 23:08:46 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B6ECF8E0003; Wed, 7 Dec 2022 23:08:46 -0500 (EST) 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 A79D78E0001 for ; Wed, 7 Dec 2022 23:08:46 -0500 (EST) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 636701207E0 for ; Thu, 8 Dec 2022 04:08:46 +0000 (UTC) X-FDA: 80217807852.21.AB265A3 Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by imf04.hostedemail.com (Postfix) with ESMTP id C71DC40012 for ; Thu, 8 Dec 2022 04:08:43 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=linux.microsoft.com header.s=default header.b=ZnO5hSg6; spf=pass (imf04.hostedemail.com: domain of ssengar@linux.microsoft.com designates 13.77.154.182 as permitted sender) smtp.mailfrom=ssengar@linux.microsoft.com; dmarc=pass (policy=none) header.from=linux.microsoft.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1670472523; 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=vcwrQocosi4LmOsysrsc5qbkkt0d5VHvi+wuU+bw0i8=; b=DOdINcidJggB1D2415lhVgoqqjBef1brlGFCTfpYuFVaQBpFs7Ne0QCromlucit5GrRKO+ gCYVg0ao3xUZTsvYRwYdM5Q1/2FPFyVJoZy6lR3xLO4V7h3FazHAv2ll4wptiY9VdQQTkz mBKnog83rzERRmmZIIhwO8aEqy208j4= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=linux.microsoft.com header.s=default header.b=ZnO5hSg6; spf=pass (imf04.hostedemail.com: domain of ssengar@linux.microsoft.com designates 13.77.154.182 as permitted sender) smtp.mailfrom=ssengar@linux.microsoft.com; dmarc=pass (policy=none) header.from=linux.microsoft.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1670472523; a=rsa-sha256; cv=none; b=4HTUMUo3OCZLja7iicD+GLdSKM8wpNLvLwO2jyhAnBkBrLtijJgq77+Ecr0tvm684npZLy HQJ5BZ3avT5bhB0vUHh1omk3LHITq+Y0KCj8JBbtsDH7bIYpsjgfNCia5IWqOvADsnkHSF 8p4sz4egxGAMC/Zdx2sXNUrlbbenmT0= Received: by linux.microsoft.com (Postfix, from userid 1127) id 9B11E20B83E2; Wed, 7 Dec 2022 20:08:41 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 9B11E20B83E2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1670472521; bh=vcwrQocosi4LmOsysrsc5qbkkt0d5VHvi+wuU+bw0i8=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=ZnO5hSg6ee/12BCZc/RGMGbteux3ixpgoBgR3nuDXYJxRFMgehB2+4z+MryrGMO6e qKHiMoUVuncqfQrVlGPBSD2BQI0sF6X83npeH69tyaXDR+MaKthdVF7SaanO4GD2QB b66xaS8Q+lAfo5z7pfWxLN6IynbWHsXkzdBmCLw4= Date: Wed, 7 Dec 2022 20:08:41 -0800 From: Saurabh Singh Sengar To: Andrew Morton 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: <20221208040841.GA19421@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> References: <1670392853-28252-1-git-send-email-ssengar@linux.microsoft.com> <20221207133130.f4894372d295f99fd4954255@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20221207133130.f4894372d295f99fd4954255@linux-foundation.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-Rspamd-Queue-Id: C71DC40012 X-Stat-Signature: u4wbmo6j8mf6qot5tpn3hqdzeh64s1hh X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1670472523-406774 X-HE-Meta: U2FsdGVkX18xxu6GJsh8WnvHuZZSBjrW4/jYBFExU2DTGqDMy2Ul/hIraSlRnqUR1kP1alDY6SzchX+XlJPCvZVDZT5shjAY0HJ1kkiscfXuM8pfRWFCBqg40Bcp8MtQo9FgAdYstO/KDyFNSBTWyTsCfpSFG89u9ciV95peDqZkqeSRjYcD93mNAsWTT+evdbYC3v3AAtI5vzqo0ZOOXitnM+M2dzfW1ODhdLkPHeP+0M+oJOv6Vh9YVyX5QZqlc0ZuW98Brk8vU51kpSQsE7kSHtqS8x7SDEVlEdw8DjHWbYwFhXnkNHn9pfyIWbEi+pUO4HQC8cbgqJzoB1A3UXfoMuFMWloMUXJ/5Q6GTzbbJyFrrV2IrukV5i/5PH4b3e00eLGX/ZqQtUWxNx7Zh1NcC4SJ+li9sEB7v59Wz/Fg7cn5RGEABfyuDLfwztdBMyauM45XjT+mIpSksz//LCfMjmNigNBZR2OsaMdYx5KbO15Nkp1yPx5zTGW3/hT5sV7V+oj3xFUNzg+WO5lYK+biMZ9P0MRVjKKr2eMzUPKqGJi+/jekEEvRwSeEyz5olp337IS1QYV0o9PbMce2AZpiJOHI4OU48XrFos5k1lRcuPWIZCYCKcksRkhVQ9GItiyVZZEuwwRurxX/7XtY67ziAUOiqEWfKVoHtHAVd4pI3ar1GaYNGOrzJYNEHyQTQceUiitUVuP+iLiB61j7WDyXSlrABwRvRz9na4tvOEpKELcff6fogILRsExp5wzuv4thhekc5t9aHueoUbJ4X8+HmuwGA9JqE35gc2mpfGp/gdeCKgt9ayaxhWHYD6ZgMV0QSRFDg6cw5wXDAw3wzxzxhAAVe19KaOiAeP/RCZphnFOpnhKYc5tl/7zFeK0IC6NLXYBDohBOSfIk51YvcQ== 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 Wed, Dec 07, 2022 at 01:31:30PM -0800, Andrew Morton wrote: > 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? That would be helpful, thanks.