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 A89DFC0218A for ; Thu, 30 Jan 2025 22:46:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3F8D2280082; Thu, 30 Jan 2025 17:46:46 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 38182280081; Thu, 30 Jan 2025 17:46:46 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2709F280082; Thu, 30 Jan 2025 17:46:46 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 0777D280081 for ; Thu, 30 Jan 2025 17:46:46 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 773411C5EBC for ; Thu, 30 Jan 2025 22:46:45 +0000 (UTC) X-FDA: 83065604370.05.81870F5 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf01.hostedemail.com (Postfix) with ESMTP id 99D4040008 for ; Thu, 30 Jan 2025 22:46:43 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=FzYFlFxo; spf=none (imf01.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738277203; 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=OTBYkgnLmwMJUczcQBLdNvGxNyN3a1W7kwhgJ7V09ZE=; b=sC+OmOb0wZHS7hzqWB3/DfkJVLi6fq3XF0KyALrUJSQmtzqzAXdh/GkCu8O1sOf6QtUIj/ LVFHNbPN5nzgDnCWPa5yPoXG84Rbwh1PP+3BdUpn01WSb8K0OoriGZonZldpcL0ZHxiJyn mp0j5CiqGIi4l3JEeDD4h5vT6aOh+mw= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738277203; a=rsa-sha256; cv=none; b=Ha0tmwozTPwYZfH/B279h6bjma+0vhDsx2d8z3R516DUhGzO3QpP82A8vKcyzbPsNzPzRL W+pAX+NHgyI4HK7Pj3KVJVck/nCEUUIGgy44C614fVlucIvpD2ovBU8/sOwtiwqZ9InmgM Wv4NL4LepV+1EV7fAZZ+mOkVBIeblRA= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=FzYFlFxo; spf=none (imf01.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=OTBYkgnLmwMJUczcQBLdNvGxNyN3a1W7kwhgJ7V09ZE=; b=FzYFlFxoomkIYi6R1eRyDIW9DV olNbeulxI8ZOxKQh38S4Y6kRviP0mB+7SG7i1aRcuPqzhdZfS5OgD32I/DjLHXdK6RtYpxPRJqPSw /PDczPzsP7PD17v6CdbUlQLjMXukNeQ+fQKy2AZm1KqCeeZAp9KQsF5lb+pCBYwSy5C6HWbQy18b/ mGMtOdd4WXqeSj8fxU0uIFVD4oVZx/m1Pkf8l3DycXxCFbvTbazTFPfpiWsxL0nm34EwLVwCrwVt+ yaV66SkA7hBG/eOyomofFGlfcR4ovPFKx2FHC325rAyGLWkHqkE3kl/oa6ZQPw0XvmzaYxPAHmqvK 6CfmcGbA==; Received: from willy by casper.infradead.org with local (Exim 4.98 #2 (Red Hat Linux)) id 1tddIz-0000000Dq56-3Rsz; Thu, 30 Jan 2025 22:46:37 +0000 Date: Thu, 30 Jan 2025 22:46:37 +0000 From: Matthew Wilcox To: Oscar Salvador Cc: lsf-pc@lists.linux-foundation.org, David Hildenbrand , Peter Xu , Muchun Song , linux-mm@kvack.org Subject: Re: [LSF/MM/BPF TOPIC] HugeTLB generic pagewalk Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Stat-Signature: te4og8w9h18wbxiik43buocxf9415p1k X-Rspam-User: X-Rspamd-Queue-Id: 99D4040008 X-Rspamd-Server: rspam03 X-HE-Tag: 1738277203-436872 X-HE-Meta: U2FsdGVkX18x5epP8vgxiwkv1A3NyJT05tM/VYjbp4XybXTk6CZ15VG/eJHdxHTN83cZ5saRTxwKh90KXmDLYY5mttgJQuQ7Z4sND2yeLSHCcWYvRcgcMxAa4WBBjWcj1TruNh0w//0WglJsycut0Zm8P7AVhA5dvUf+q43Blu2E/0Y5jbxrYJ0jtwgms9EqKKtqS0IoOalcge+fbKIBjMEUp9gnHVuylBgEQDJJVsTo9/LBU641FTfTIu55W5rmzBJxRKgJCxd7zWpO5MECr/8w1tShnT/8ZDRl9ZG8BmDM9WhSUU/oZlQ26x8doVB+gPj/O3HSfKTnnUN9G8FNOjp/3xwInMm8caskzrnmAi/PUXqC/SmCZG1UqFWY1JTkMiszSB5crKm6hjBe3Q6oknQtHKhN1KidgR97Ideu9hsd393T8uuTN+zV76x641MyQPpZXOsYNE4pMrWUnenRCoYF0JgAefaDmu3o9ful3dLtIINJVdmUkDwHUePhqRJsHdBrVrdOvjBEeZruMkr279A+ulyC14E21VruEAsqNV4uCubR0BXJmyEHb4cWWcwukn2oNbR3SFSeHPuQXOHFC1L7ZQTHUTfeXdJT6IoDZDBhyMnYxsDeFshRpflez9VeO/X3i2TEPCz2rdQ/clFqZXaKs2r2GOXjLr2z1eyN4AomN9HdghszQfZBaG9DdiFD9dL7LidLoBDAnfC1LQTYeJ7Jvsw3ZPmvH9yxEcFgJ/6QCo5nPBsaFXvXQtAZaFJG1ZJgEYgoq1eD/lNmJHAiJPRIPsgYVkQb1LyKAsSHMoM1vFOsMru3h5U9bxhzV5M4DSngEQpK7unnHsYe/b2dsIR+vxghs9tHddaf4d1VSAha8FGjdpjtOIa8Tl0t0MziNo89YqQWnlcbBGjvC6qevQx2IqvVMf/YwFlzZEFEea9yd28cLteM9B23dn8noSkkbNdpbkRB8q61WH7aLtr 3OO4UdVv vbbv0JN/agfctnrLHDKM8vf2qDLvxgYyr4gCKHmDTMLpHTwOyWAS7UxK4wJQUHRK9BhbrUQjSjtHT06sLKLMyzxi/22Gy07kIJByLAovHr8fbv8Tt+gDyqTXSk29l3d/A00z75Xs8lXGXMpmdD2aAvHk79Qohws3be/DUKgMO2LoBQUD380IMQaYBAnc15rD/P+l2ua60w9WZObYIxztbok7QqOnLmTQ5eevY X-Bogosity: Ham, tests=bogofilter, spamicity=0.268605, 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 Thu, Jan 30, 2025 at 10:36:51PM +0100, Oscar Salvador wrote: > HugeTLB has its own way of dealing with things. > E.g: HugeTLB interprets everything as a pte: huge_pte_uffd_wp, huge_pte_clear_uffd_wp, > huge_pte_dirty, huge_pte_modify, huge_pte_wrprotect etc. This is a bug, not a feature. It makes some horrendous assumptions about how each architecture encodes its ptes/pmd/puds (ie they're all compatible). By and large they're mostly compatible, but there are some awful hacks to work around the cases where they aren't. > One of the challenges that this raises is that if we want pmd/pud walkers to > be able to make sense of hugetlb stuff, we need to implement pud/pmd > (maybe some pmd we already have because of THP) variants of those. That's a good thing! typesafety is good! hugetlbfs tries to defeat it and it works rather too well.