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 937C9C433EF for ; Fri, 17 Jun 2022 15:26:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 059596B0082; Fri, 17 Jun 2022 11:26:46 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id F23E66B0083; Fri, 17 Jun 2022 11:26:45 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DC4E36B0085; Fri, 17 Jun 2022 11:26:45 -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 C96026B0082 for ; Fri, 17 Jun 2022 11:26:45 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay11.hostedemail.com (Postfix) with ESMTP id 9F5DD8033F for ; Fri, 17 Jun 2022 15:26:45 +0000 (UTC) X-FDA: 79588105170.04.F02997C Received: from mail-qv1-f50.google.com (mail-qv1-f50.google.com [209.85.219.50]) by imf03.hostedemail.com (Postfix) with ESMTP id 2521820092 for ; Fri, 17 Jun 2022 15:26:44 +0000 (UTC) Received: by mail-qv1-f50.google.com with SMTP id n15so2886199qvh.12 for ; Fri, 17 Jun 2022 08:26:44 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=nxeOkeINDpzy3OEEqm+X2I0MEyWZgikOx3MDeUuxZIA=; b=hIj5O+DBOY8bvtYHuK8gGEH0AgYoRGHTuWmctPsaYGlYHMtOpufF2nr6mQ12cczW91 SUTt2CbNP3pEs47OmdCaRheq9CZGzXJ2WtpeE9QIUh/2d6KovR2Cfyi8BHd6QQ9hqWK3 Dy6bKWqJhBZ3HWSACkfSAd3Y98HH7S4ORudq94YG1IC6wAWEiM5J2R5iTtReY9iA3icy fejE4kKbLnELGKt1607MBr3WWLfGC3J+bv3N98VPP6kGEbOq9FjH3ZYKW8my9ie24VWU mCFRKFSIbNR8t1wafrOzZ+2gxf6tmBfQ6Pi7Pyn0WO5J8hvywQAitRt8uYRQGv98B353 pxZA== X-Gm-Message-State: AJIora/3/UjUhFrvJDw7D2M0DlKu3MCCkObYRPLKDF8BBjprVQDjDZcE C2SeRJ2ZnXbHe1MPycNPPpSP8X3P4nLWBw== X-Google-Smtp-Source: AGRyM1t3830Jss64nhzIKA1TNN7xMtYfAao46TFbt5tLPZH2KjeDsJdLdf3KjnXXfo7EExZA/1QlDQ== X-Received: by 2002:a05:622a:1710:b0:306:77a4:2981 with SMTP id h16-20020a05622a171000b0030677a42981mr8776678qtk.268.1655479604124; Fri, 17 Jun 2022 08:26:44 -0700 (PDT) Received: from mail-yb1-f175.google.com (mail-yb1-f175.google.com. [209.85.219.175]) by smtp.gmail.com with ESMTPSA id d7-20020ac86687000000b00304e47b9602sm4240931qtp.9.2022.06.17.08.26.42 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 17 Jun 2022 08:26:43 -0700 (PDT) Received: by mail-yb1-f175.google.com with SMTP id w2so7814615ybi.7 for ; Fri, 17 Jun 2022 08:26:42 -0700 (PDT) X-Received: by 2002:a05:6902:905:b0:64a:2089:f487 with SMTP id bu5-20020a056902090500b0064a2089f487mr11481017ybb.202.1655479602392; Fri, 17 Jun 2022 08:26:42 -0700 (PDT) MIME-Version: 1.0 References: <20220616210518.125287-1-mike.kravetz@oracle.com> <20220616210518.125287-2-mike.kravetz@oracle.com> In-Reply-To: From: Geert Uytterhoeven Date: Fri, 17 Jun 2022 17:26:31 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 1/4] hugetlb: skip to end of PT page mapping when pte not present To: Peter Xu Cc: Mike Kravetz , Linux Kernel Mailing List , Linux MM , Linux ARM , linux-s390 , Linux-sh list , sparclinux , "linux-ia64@vger.kernel.org" , "open list:BROADCOM NVRAM DRIVER" , Parisc List , linuxppc-dev , Muchun Song , Baolin Wang , Michal Hocko , Naoya Horiguchi , James Houghton , Mina Almasry , "Aneesh Kumar K . V" , Anshuman Khandual , Paul Walmsley , Christian Borntraeger , Catalin Marinas , Will Deacon , Andrew Morton Content-Type: text/plain; charset="UTF-8" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1655479605; 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; bh=nxeOkeINDpzy3OEEqm+X2I0MEyWZgikOx3MDeUuxZIA=; b=pGgNmU0bDB4aDOdhR+TKLuE7sQTZ+2fDSBlUBsTQE/L7PPtfmkElEAQwA7yihJYrFXETeH /UbTeoWHqwkvo4qxQEuP2sXghXxszp90gn8XdQeOWeQOMSk9lrgrM3AxfRiOusJPdDhAqK zM6Kco8vAtgCxIjdjt46ECQ9B2t3Wf0= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=none; spf=pass (imf03.hostedemail.com: domain of geert.uytterhoeven@gmail.com designates 209.85.219.50 as permitted sender) smtp.mailfrom=geert.uytterhoeven@gmail.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1655479605; a=rsa-sha256; cv=none; b=6Id57gxi4yhUHg3RyVH9BvHMHc+CiDMJRp86l9IqAP3DK88ce/gAoiGWBYFpn8ZxEbyThX hEzXeBqnLnXJqjLaW0IXYpdo6CuU9JExC6qkkdc8qz5WesO13ETeDnfXxMkjlebJCfialm QiGWgO7IfwkQDCfDHLJO1CN8gKb6yEw= X-Stat-Signature: t5y6t8qh8x6uiui131k4bdby4iqu97yu X-Rspamd-Queue-Id: 2521820092 X-Rspamd-Server: rspam11 X-Rspam-User: Authentication-Results: imf03.hostedemail.com; dkim=none; spf=pass (imf03.hostedemail.com: domain of geert.uytterhoeven@gmail.com designates 209.85.219.50 as permitted sender) smtp.mailfrom=geert.uytterhoeven@gmail.com; dmarc=none X-HE-Tag: 1655479604-567279 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: Hi Peter, On Fri, Jun 17, 2022 at 4:22 PM Peter Xu wrote: > On Thu, Jun 16, 2022 at 02:05:15PM -0700, Mike Kravetz wrote: > > @@ -6877,6 +6896,39 @@ pte_t *huge_pte_offset(struct mm_struct *mm, > > return (pte_t *)pmd; > > } > > > > +/* > > + * Return a mask that can be used to update an address to the last huge > > + * page in a page table page mapping size. Used to skip non-present > > + * page table entries when linearly scanning address ranges. Architectures > > + * with unique huge page to page table relationships can define their own > > + * version of this routine. > > + */ > > +unsigned long hugetlb_mask_last_page(struct hstate *h) > > +{ > > + unsigned long hp_size = huge_page_size(h); > > + > > + switch (hp_size) { > > + case P4D_SIZE: > > + return PGDIR_SIZE - P4D_SIZE; > > + case PUD_SIZE: > > + return P4D_SIZE - PUD_SIZE; > > + case PMD_SIZE: > > + return PUD_SIZE - PMD_SIZE; > > + default: > > Should we add a WARN_ON_ONCE() if it should never trigger? And with panic_on_warn, it'll panic only once ;-) Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds