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 82B48C25B75 for ; Wed, 29 May 2024 08:02:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EE3266B009A; Wed, 29 May 2024 04:02:58 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E6CAF8D0001; Wed, 29 May 2024 04:02:58 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D0D2E6B009C; Wed, 29 May 2024 04:02:58 -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 AD9A86B009A for ; Wed, 29 May 2024 04:02:58 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 56BEC1C1FAE for ; Wed, 29 May 2024 08:02:58 +0000 (UTC) X-FDA: 82170692436.13.84DE6D8 Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) by imf18.hostedemail.com (Postfix) with ESMTP id 323241C002D for ; Wed, 29 May 2024 08:02:55 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=RMfrtTGC; dmarc=pass (policy=quarantine) header.from=suse.com; spf=pass (imf18.hostedemail.com: domain of osalvador@suse.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=osalvador@suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1716969776; 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=SXNn4brV8l1cKgDS0zwRf7wcdauWIB3ooZqqAlvwD7I=; b=INrQ2btjUyk7AEdZrYmTDNEOvYkMnoOsOmDnfnJMsyr65CVMsEtnQ3Tdp4Vz3+eVOnsu0E sHG63fW74R38dYgDXPyJfS7pUsFFP0750NIad9MSePCfobfbj1UMWUd6C12DkuE55ENXLK ttuc22s8gUJI8pVO7BnBDr2CmZOByTs= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=RMfrtTGC; dmarc=pass (policy=quarantine) header.from=suse.com; spf=pass (imf18.hostedemail.com: domain of osalvador@suse.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=osalvador@suse.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1716969776; a=rsa-sha256; cv=none; b=cd7WpCxY8nmatGBku0ENzt0j2/x1WXmR257l12alMYoxQn9V9DXcFvaKJLxJJbfIZQ6xBo CtyLTxsJb35SKHZ6szRZL22yqTHC27HQF1pqMYhwhgKaUlJAnHADR96lhBFPX9gjDQoc8d ucz116R/UIDytKYnAF/jwrWoNT4QRJk= Received: by mail-wr1-f42.google.com with SMTP id ffacd0b85a97d-3550134ef25so1692341f8f.1 for ; Wed, 29 May 2024 01:02:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1716969774; x=1717574574; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=SXNn4brV8l1cKgDS0zwRf7wcdauWIB3ooZqqAlvwD7I=; b=RMfrtTGC1TzqbCSZi1sfJ7L4VqB5UJUnYZmW7O5oBOnjgHfp4i5IdUzi+xVAMAUFw3 iFKcx4Ogl9+PiD1dtX6O7BSbj9nTo9+EJapfm0AGwfm4tifpkklbkB3Jj7lg1w53WpJv QdKjlHbH8t3qkcLk/sYaLu39kTyIFGTzTCMay8Pg/+OiSqj8yg1cu0+CDMeVOJ8l7Idz QIC778DWAAngl1h/McFnFcVZCnXGjqAPoRXv9WtQZz7A7odpRHeKKV38LZeNIZe8nkiJ wrU9FfJtXkRU66s5doO87CbnlJcTJ82ryfubQzwOB6pyvWq5+Bq3JbVvb/d/siI7hQxP RN4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716969774; x=1717574574; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=SXNn4brV8l1cKgDS0zwRf7wcdauWIB3ooZqqAlvwD7I=; b=s+AGjcxmV6oGve8use8BE7Cj6iRcVON+rQiPxyguDtDKI8aqoGczlYlWq/4yV7WhLZ +qryuznnqyfz1pCRUTYuVWcpfBiwuNo/L3VsjDOOW/iG/B3pyrEoFsGhUe0MZrT0QlQK NKtBhIUlSo+ykTl8Um6bd6FpPTjzBt2/VE030Fs/pU/Htfl1KKvsTu2wK5iKGE33uXRq 45f7EvM0WCu5a6ebi61bxtu6hupvLuh6LkjZBsNseTkdqaNM/rHuJcEmphMykCFUneQh 1kC2du4FhYdTshZcQrt4qN8GrAKFwn86T8rTJUxijk5y2ngxoqxP1TGpmUVqNQbxFQlb 8XvA== X-Forwarded-Encrypted: i=1; AJvYcCXWS5ndDrKsB0ECiTsTkDboL+Knr9LobFiZBlMb8QBDdx4YPf7aBTnxW5mYslodFKHhD/De6XZLxooa1unY8dnDOnA= X-Gm-Message-State: AOJu0YyV8KP+74hxRrh73pTdttdZuaSsKOaD0MFwrY1uSdapZWqiAwy8 zEYRjkum1eWmc46Kr/NcjbS5aPy2gvRYmEpxlpGwZRAI8LZJuqnMv7l6ytOI6ys= X-Google-Smtp-Source: AGHT+IGHtnpYsPo68r8KO+o5cak6O4GpcpzRjyYOkzKRLlpb/rBAfxulIRtpV3zXqfuo4S13urHc6g== X-Received: by 2002:a5d:6042:0:b0:354:f371:de64 with SMTP id ffacd0b85a97d-35526c5a10emr10971727f8f.31.1716969774592; Wed, 29 May 2024 01:02:54 -0700 (PDT) Received: from localhost.localdomain (62.83.84.125.dyn.user.ono.com. [62.83.84.125]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3557a1c93c6sm14009154f8f.85.2024.05.29.01.02.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 May 2024 01:02:54 -0700 (PDT) From: Oscar Salvador X-Google-Original-From: Oscar Salvador Date: Wed, 29 May 2024 10:02:52 +0200 To: Christophe Leroy Cc: Andrew Morton , Jason Gunthorpe , Peter Xu , Michael Ellerman , Nicholas Piggin , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linuxppc-dev@lists.ozlabs.org Subject: Re: [RFC PATCH v4 08/16] powerpc/8xx: Rework support for 8M pages using contiguous PTE entries Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 323241C002D X-Stat-Signature: xg54a4xe9xuqm3oxasseko31xn5t1rar X-HE-Tag: 1716969775-59358 X-HE-Meta: U2FsdGVkX1/gUVuvpF4DlAUq0d3KqAboy5z2hZXqEPSuxr1vHk+xwikJtlgJcb1s7uvuqLAKGVGQ/u0dmBCa708V0c0blbrRmLNHP4S0Ke1nOXzKuwHpT3y84FEwuoM7xXnvLd5ovDyjAgt9KB1sRKn6ojv6gakBPo4fsuWfFSbxWDjDZeA/yX7o0SftZkwOVcb/X5IcqIIyiRR++I36nqfct8jSij6yl9DgxDFohfWRefBbXR/gBXh9oUb8Sq5yH6HjcfxjtTpllwufdgS/9EWXDpLOj5Aze4IzLKACwW1mxpNsTSPKhcbPvN0kUDms0uwsOr1NLVfzb96bO9347m0npf78KsHJUxoPsFpTF+sPqlOGtLnpxLswbTEcApCwI9Gtaln1skMR1egZPcyqO8eh+pnMzCu1Xa/ZUyRMCGxk2DYdPIjTEuoRuyMxW/PUyuo1Z95NHnK741WchFjSmfcX5q8mqQQ8+dKCeakSCrH1o/xIge9kEjaSSetMzp6qL8mYzbkylclrZIt/Ie18u04agWtpg08YTG9qcS6wUwQVTXo+JmPWSWWbiN1BHkcJBsrMOrfpyrewf8whNWDsgw/Q1N6VbNpb/hlTgOLmjGcerXqs7rysJ04wJKje4AAnLLe9G2/HOiwlWhaBxm3K4BxdCBDUf0uBZeXbCNdSXGeC86P/gCYFxBbOhZAJJSkAcY8FmwMa8/FOLVqxrdxxDbn/KhrSbHxljsTxBkR/HFgFSwzeU7xkKrrOpYGmoYWLRD++PvHoqOSQJueJEJPBsRBZt3AaUVQfcPYdboA9LGJ7fX5Dtk9SjQDvGQeiSwvU5k9KpcNp2en0PNlAd/GtzhkrLqlydQLASIu8/VDSk+uUNuzPcaeBZA/03MYMU8ZC2ScUIihY2I9mes+hk0ntGPgryUVujUJlqv1OQyABRuM4uzaDgYSPCIZMiDCG8uKz/eW5YaqoPefaVY/CWoT ARo9QUuK DbtiSgAAFr0XYsfg4EXVZ9aPNHglLx8VCHWodqdCa+Xyc2L61L7EbemveemWbYCrGc2jFgB7avxUN7Iszrsf7w2dCeKlcZzy/T2GvkFgQntuyeuVZUQXAxUDpJi/eME5h8Z8onpQugf3b8E5Mt+Q7Xx3ggZ/QzXI7ANS32tdQeIvGdclxHZE/N76MVuVrvM6pLgYw9hA7Hvy0+rGBSKFfsB5PnY/nKRPLu7NhJbYCaMwKZnlUNeyTRgN/OymIHfrBzVsTJSTDH35+sbpEJr/MtGZtjbETjfr0R6aIrRWhaC/bNRjyVhWEvT43lIfXIlIpllEAM3ZztfqN8VNzYmIByCukGFCJWGFM/J8JMmr4cOSX1Ac= 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: List-Subscribe: List-Unsubscribe: On Mon, May 27, 2024 at 03:30:06PM +0200, Christophe Leroy wrote: > In order to fit better with standard Linux page tables layout, add > support for 8M pages using contiguous PTE entries in a standard > page table. Page tables will then be populated with 1024 similar > entries and two PMD entries will point to that page table. > > The PMD entries also get a flag to tell it is addressing an 8M page, > this is required for the HW tablewalk assistance. > > Signed-off-by: Christophe Leroy > Reviewed-by: Oscar Salvador > --- ... > +#define __HAVE_ARCH_HUGE_PTEP_GET > +static inline pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep) > +{ > + if (ptep_is_8m_pmdp(mm, addr, ptep)) > + ptep = pte_offset_kernel((pmd_t *)ptep, 0); Yes, you are right that this should have had the addr aligned down. I can speak for others, but for me it is more clear to think of it this way: 1) check if ptep points to the first PMD entry for address 2) if it does, we know that the PMD describes a 8MB hugepage 3) return the PMD That is why I thought that directly calling pmd_page_vaddr() gave a more clear overview. Now, feel free to ignore this if you think this is not clear or adds confusion, I just wanted to give my insight reflecting on what I considered more logical. -- Oscar Salvador SUSE Labs