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 4B561C25B76 for ; Tue, 11 Jun 2024 14:17:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 87B1F6B0085; Tue, 11 Jun 2024 10:17:45 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 803D76B0088; Tue, 11 Jun 2024 10:17:45 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 67D9B6B0089; Tue, 11 Jun 2024 10:17:45 -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 475C16B0085 for ; Tue, 11 Jun 2024 10:17:45 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id E421D1A1055 for ; Tue, 11 Jun 2024 14:17:44 +0000 (UTC) X-FDA: 82218811248.06.C8761A9 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf21.hostedemail.com (Postfix) with ESMTP id DD3B61C0026 for ; Tue, 11 Jun 2024 14:17:42 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=BS6yuUum; spf=pass (imf21.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1718115462; 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=jE1WXL5kXHxZ8d5bW4A1JQT02tpPoLrfA0795fkkSac=; b=7yEuGukpYDVHQ9kjPf5835yAGitedN5Rk7kX8lQfNboQvYig0cQ66NkaECbDuWUtsC+yR5 vrkhbYAJXnYnyyk258tnakcR38RFGt1hNgvIj6vqrdTLaiH3yW48d6tFQQMDd3cDPDJPM7 yWa5MsHm5DtjxYYDCqw1ER1NjGnTX0A= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1718115462; a=rsa-sha256; cv=none; b=WlA3zX63L90nWypZsmUIhGAahsVaoCWuG9PBDKVM6lLrQFxO3xMy1ONXRoYMPj8POhdTOx z+jbR20axBWMBzxjUiXbYRAU6669WcGTOwtn7waRl1QKacmlVtY4trWB4xKyH9nC97WVYQ 4Q0phYdQEqHWRCCZq1Bx3fXN1Wj+IQ0= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=BS6yuUum; spf=pass (imf21.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1718115462; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=jE1WXL5kXHxZ8d5bW4A1JQT02tpPoLrfA0795fkkSac=; b=BS6yuUum8NadmbBaOozqXzW6yYrIJj1ZaBhLiqx7TiL4/f89/TO5q/stGdDrLPrL2+e22C THJ5DhIEUiCU03bBJ9ZTJPwMF6hGUA+WyJYjYkoNxOeYct/iwOaofh398HoxajwOfsL+12 nR1J7jeGq3p+zNYrNp5Mzcz77zQ7uqE= Received: from mail-qv1-f72.google.com (mail-qv1-f72.google.com [209.85.219.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-223-a_-h64mHP4aenxtm_XknWQ-1; Tue, 11 Jun 2024 10:17:40 -0400 X-MC-Unique: a_-h64mHP4aenxtm_XknWQ-1 Received: by mail-qv1-f72.google.com with SMTP id 6a1803df08f44-6b087876f19so196896d6.1 for ; Tue, 11 Jun 2024 07:17:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718115460; x=1718720260; 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=jE1WXL5kXHxZ8d5bW4A1JQT02tpPoLrfA0795fkkSac=; b=c17Jvr4WMqHLO2G+wxTTgbslaLGCXn3WT3eSu3L0aR52k/TeDT7sTflQSj89EORh0u +eg8aff55f32ePn9O/7LZMx53R2j0M0nO684JntjcfH2WzSXT89Wcg/aklW4ZUPNzN20 Ze2jmpwlj8xI56tytyXgrvtkdtbfkReXEF1it2H39e/05s1Yu5BpnyAaWMNGafz69Be7 6jleBNIBUnq9kMDVEAKPAFYgE/9DVKl8BlcOMozzxh7udHcFRLHx7wDUk3aMM7Z5JH2g 3xeh2yLRLBOgTcceSCu8m2BSQRTwo6/iWfERNYOA1SockhywQc5mrs3z6YvQvTIKaoj5 eABw== X-Forwarded-Encrypted: i=1; AJvYcCWB8ZmfSGiu6OWpm8vad0YXiz1Rp+y17H2Y0Aw+ZUVh8LamKVG4QaCmjnYkABt8y0HtAu4unC2yvXYpNzQm7ygEg2M= X-Gm-Message-State: AOJu0YykrYW7AnUQzb3xeH8+y6R0shZ0tNFeppS5sLag933Z30vTjPjU MOAhB/1Y76ELG3tBRfftt/HFYhD4jnNN7ufFyaJEYTsfNmhlmLJ7DgnA4rSfVpf5P0RJoJ/EIjS o0jwpcKMuKi5wRG9c8BPiuA0enyitwvpDdIz2uIOVaD48ITNc X-Received: by 2002:ad4:4425:0:b0:6b0:6e0a:4da8 with SMTP id 6a1803df08f44-6b06e0a5003mr90869736d6.1.1718115460055; Tue, 11 Jun 2024 07:17:40 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGfzYLXL/Zzs2Dj1xAt8VEOpOAcqtFphruxKx4ngQRSZQuqsTYigZMQ12LgrL5w44f93GNlSQ== X-Received: by 2002:ad4:4425:0:b0:6b0:6e0a:4da8 with SMTP id 6a1803df08f44-6b06e0a5003mr90869266d6.1.1718115459381; Tue, 11 Jun 2024 07:17:39 -0700 (PDT) Received: from x1n (pool-99-254-121-117.cpe.net.cable.rogers.com. [99.254.121.117]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6b07520d999sm29500596d6.37.2024.06.11.07.17.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Jun 2024 07:17:38 -0700 (PDT) Date: Tue, 11 Jun 2024 10:17:30 -0400 From: Peter Xu To: Oscar Salvador Cc: Christophe Leroy , Andrew Morton , Jason Gunthorpe , Michael Ellerman , Nicholas Piggin , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linuxppc-dev@lists.ozlabs.org Subject: Re: [PATCH v5 02/18] mm: Define __pte_leaf_size() to also take a PMD entry Message-ID: References: <172b11c93e0de7a84937af2da9f80bd17c56b8c9.1717955558.git.christophe.leroy@csgroup.eu> MIME-Version: 1.0 In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Server: rspam03 X-Stat-Signature: jtkbghi48ecp1i878majyjcq16yzjpxr X-Rspamd-Queue-Id: DD3B61C0026 X-Rspam-User: X-HE-Tag: 1718115462-484127 X-HE-Meta: U2FsdGVkX18fQvqG4q3jUNN6LEZS0xetJs7yPNFTHKB+u6waLZxVhvLHw440VGLOc/HigxNx0vgquOxWoO8mOD3Vf51OtqPyYvPsEJnaVeHwQo7XMylUG80dDK2B+DEYqWnshETyP1izBzYK02Y2VdLPl6oqLuj8tdC+ZTprgtS7uJn94udtUHzejMXxEq0NK44j0R+qUUcBISnJWyOGmVfojCtXL+8mfI3VoLzI4cyacLB6UEZbQYtVKe3Rdaj418lPLcBBwdSz1gP3Hs6goyljZcPXHzRmKL5oPDC+E/UEdhPRVxy/dUHmFmX3Ih9LLzcJLhq2lKjjtYtBNeARN0B4zQCL9odeWJWZkei015e30kuXJfo1te2151mGzwXvhFtPaqlb9nxtl41jcrc6G/ngaPojd4VCwLjmI09Im0OvsbWI8ilC81LhWf2acU1IT+yZ7YZePCYAdmi+9moLDXezyttfYYnGWQ6SO3P+GCNCexP8vD8jXHSIcD51oEBysiVziWg/X2hWEDm2tDbwUZLv1+MDApnxHrVaWWYaRiJftQ1LbRNZ60fDOjQ6Tl7tge9x2z3pCspc1yejCqhcjU0X5LPwnlAmRZMjLFZscs6zsbH3Fg3T+6d52zSv/4CHtm18vaTFYEi/7svppuJgIxXiBgRQcsYHNWFSATaQ0eWDFN6cIcO4D3tqTmmLBcYGhkK+YoVHa0mLSkwi2PTtsiQcPjoJCpKGJWaUah9bds/tmRQfXLeiW2vIGQWY6FYIkm7MtF8iT7noyZ2VHSrYrN4Tcw8YWiaqYGhs6TaJRoAV7A2O+wmDgA9YlngFXsSLDrDdGVT2VRdBj6P5Qsf6ArNHGQO8lCwJpjnNCmZhnjTXiAZKalNWBKQ+34RYD12HmjjJlYhHOVWsRXR3vKSv3oaBNq4ttOrd6cJtP79UP3Ly0D5Cr2ryFU9v28DwH7BaS9PDhpZoMy6wGtSb+pl RSjw4Pgu eoWtd3UThizALhfkIvyO4WcAswrlMU8qlG2Ptk9rUHFGnxkcL8phMoEhVpFyK9IpKrBbETkzVSmYqlHvgzbKfjZFGk9Dphxf5sthslUIKvIS1N4VmAB2er/VJ9RrTB2C8RDS1puIoCzzDLkEpMBSPnHzfzrAHl9nofGFApPR4PUBd/jTCCtvN3Ik28iR9DxLeMihu44DO53CBWufm48yDVfK6XeWZHqlXgqhc3v9Z8WZIqKC8HNHADyv0MtNYsAnMYFRORYpqWi4VIsJB9F/XbotPlYAcIPMnpl1DRD6Ec1V8gudiqwG6LnfbT/ZPS/35zGhg9oAF7T5kzExpeZzZrAl1bVB9iX6R29J+bPiKzPaZLBQ= 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: Oscar, On Tue, Jun 11, 2024 at 11:34:23AM +0200, Oscar Salvador wrote: > Which means that they would be caught in the following code: > > ptl = pmd_huge_lock(pmd, vma); > if (ptl) { > - 8MB hugepages will be handled here > smaps_pmd_entry(pmd, addr, walk); > spin_unlock(ptl); > } > /* pte stuff */ > ... Just one quick comment: I think there's one challenge though as this is also not a generic "pmd leaf", but a pgtable page underneath. I think it means smaps_pmd_entry() won't trivially work here, e.g., it will start to do this: if (pmd_present(*pmd)) { page = vm_normal_page_pmd(vma, addr, *pmd); Here vm_normal_page_pmd() will only work if pmd_leaf() satisfies its definition as: * - It should contain a huge PFN, which points to a huge page larger than * PAGE_SIZE of the platform. The PFN format isn't important here. But now it's a pgtable page, containing cont-ptes. Similarly, I think most pmd_*() helpers will stop working there if we report it as a leaf. Thanks, -- Peter Xu