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 702F5C4829A for ; Tue, 13 Feb 2024 18:51:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E5DC98D000F; Tue, 13 Feb 2024 13:51:07 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E0BF18D0001; Tue, 13 Feb 2024 13:51:07 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CAFCD8D000F; Tue, 13 Feb 2024 13:51:07 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id B730F8D0001 for ; Tue, 13 Feb 2024 13:51:07 -0500 (EST) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 97F6A160960 for ; Tue, 13 Feb 2024 18:51:07 +0000 (UTC) X-FDA: 81787672974.16.19A8168 Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) by imf01.hostedemail.com (Postfix) with ESMTP id 9BF2A40029 for ; Tue, 13 Feb 2024 18:51:05 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="A+XiV/23"; spf=pass (imf01.hostedemail.com: domain of adobriyan@gmail.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=adobriyan@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1707850265; a=rsa-sha256; cv=none; b=3RhHNTicvjskM+Ypi9uuMHhkV2eIR4S0Qwr6bdne82l18CqneTlf2j8/kWZjOryrShGgQA gCu1kpkwho/orklipUepskfvxwdQ0Ie7KurWBNDWdKwusWSMy68p8f7qGeAlZnttcx7SGC Ad6Xf8bl5Z8akKNkMeV3y+j60DzZq2U= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="A+XiV/23"; spf=pass (imf01.hostedemail.com: domain of adobriyan@gmail.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=adobriyan@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1707850265; 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=VZSu/ICCwgH/MzK/59qpKGnX2HpFwqdrjeqh9wkkz7E=; b=1X1j/j2qAn5iD5zje41dBRLEsO2uOVSurJMcjRMrs9jfGhzQVaxOAEbdYQZanl+yFjGBpg li4ESsfdtsgeOZ/NXcInzVTnjs9EazJcKITatFBe4YfUWEO8FMcNPXlOuq2GIxpe/4gJ8/ 9TmDwfYrVRtFFtdn1HJb2Udgh6G1cNI= Received: by mail-wr1-f49.google.com with SMTP id ffacd0b85a97d-33b66a7f859so1759319f8f.3 for ; Tue, 13 Feb 2024 10:51:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1707850264; x=1708455064; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=VZSu/ICCwgH/MzK/59qpKGnX2HpFwqdrjeqh9wkkz7E=; b=A+XiV/231Rfg/khnV4e8Pw1hng+/OBdQ/TTLeS4UyJISVLM06MMX3LmWIrtY69VzN1 36e/q1F4swjYk50hhZaPBc9OjW/M+Jfe6mEiI7JLFfyr9+21nDaHjID1GDZVFEp1EUjW 65FtOVUvqr4MSyNkTFTJiZIf1OhG3anf1Dlw59kKaurTmzvNmFIefcZzKnNX3WsfThms u3MY3OF+o82ygvb3fuwhGr11ra3Q7c7kV4FQC0m2QS03ITUBYjYqy/oVqFa4YdonjID/ 10bDXZekHepqEcr/wAhFXLKhobIBQXAVzkLCjSS0GKwrcLYQCl+y5e+hGiISLuIFsHU1 75+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707850264; x=1708455064; 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=VZSu/ICCwgH/MzK/59qpKGnX2HpFwqdrjeqh9wkkz7E=; b=RDlzXcJeMqSKckfzlhSe+vIQ6lXhu1MiwWuB2h2l6PLCj+fVismf68gfPxDM6xjZqU G4V0LeqHNBMSQRcMT3EAWFqnNeUHr1B5D7e19z8R/bG18EAS/JzJOSepILfoX1+AHJ+C jkZClxrP46/PR4r3MFGq6LKlnKNXzo+P+CM2eDAGYoHufC9gxDcRjJUkxujwmO/c4/2w niSX1AIJbkKLzGaE6VT/JrHLWEbflqvL27Y7xSEArjl5p+2veT3LLyxnGjBY/ghMcjNg PfjcFGevTule4/HjUvbQ8zUHf+2zfXZjXWQn5ZE0F4zqv+uGnGEuH+gSTpBEbaOahXLG e6bA== X-Forwarded-Encrypted: i=1; AJvYcCX9S+saEbjYgsTPXJduMKrLME67EI0pYmxPjeCF0KNQVBOHEP9FSd7QhlPlrmVVG2/xygbRStQfFvuIJqV/aKW3eCw= X-Gm-Message-State: AOJu0YxbkIIHl8erJd384/KowxAck52Piv0KdhC0rfzh9vzTUNdS9LQH nXikBg7mw/IG0KRTM++sBrW4fQA+y+Ns92SrEIYTp1h1yXOE7SI= X-Google-Smtp-Source: AGHT+IG0G2DEzT2VVZoK3Ur9Db+zaKrR7asWSUiFE+IhNY+2eRdo3M5XI8ZHWzY4YMnBkLjtPRZSiQ== X-Received: by 2002:a5d:5143:0:b0:33c:d5a7:4fc with SMTP id u3-20020a5d5143000000b0033cd5a704fcmr126938wrt.16.1707850263837; Tue, 13 Feb 2024 10:51:03 -0800 (PST) X-Forwarded-Encrypted: i=1; AJvYcCVdWhlPicAlD80n1REmmnyM41Vxu9NbVAefRMubI/Mae9u8O2OkMFk6XQbd4ZfvDm6Va8tXFmGmYcPcwfefiYvg2PcwSGqStdmz55Is7vqjWps15xZhGuaBqlp/seoGUP3u47oqX4NIy1rbguTbKeH/VJd+PiEQIz2xpZcx4Er/BJ/f5647vYjL7OuDq2H1UXHelOuMORrC/08ImM5prPbDSW/Vl87TC6pkL+7CSw+0BePmnQYxRVJqbL+NXWtlkka1oCOQnV2M+eNAD0Dmpl4+FTjQt0mPHfYlUJzZxhqDqzHSBphi49Qg0di1VXrTgA/EnuuJoh4IvlgiSIM/OH2750HczDNW4VWRhbjE/D9FPZLRseGofHElYGO62mF+xzxLvXE= Received: from p183 ([46.53.249.38]) by smtp.gmail.com with ESMTPSA id dv5-20020a0560000d8500b0033b483d1abcsm10226994wrb.53.2024.02.13.10.51.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Feb 2024 10:51:03 -0800 (PST) Date: Tue, 13 Feb 2024 21:51:01 +0300 From: Alexey Dobriyan To: Kees Cook Cc: Andrew Morton , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , Florian Weimer , linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-api@vger.kernel.org, x86@kernel.org, Eric Biederman , linux-mm@kvack.org Subject: Re: [PATCH v4] ELF: AT_PAGE_SHIFT_MASK -- supply userspace with available page shifts Message-ID: <54774e70-1e94-44f5-b318-fdfd5115041d@p183> References: <202402050445.0331B94A73@keescook> <202402091625.4DF63CDD0B@keescook> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <202402091625.4DF63CDD0B@keescook> X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 9BF2A40029 X-Stat-Signature: h6t83oamtojwhz3o5zag8ahwf97fnuea X-Rspam-User: X-HE-Tag: 1707850265-656405 X-HE-Meta: U2FsdGVkX1+KcowD4wX6zgrV/E0yeZ71OuPAc7B5+ZVhvnPy0dn3sr6zF7Gr/7Kp2oAPU2wdtVDL79SEl38inUGKfFs8YidMSZLNxLh/uWBrX5EsUd405L+cD+rhyBg+ftup31LDQIMpzU46XIdOK8wJn7L64exJPzAE1TTZ2moeI7/M3SnDE7Wpk0oZ9FWIjM4Ogt2ghVJg9oGSmx/hwpuxximmd0JMiDuw3bCCJLRakJ6OHxnJXFHAWvSDHOx2YQex23gytvNKE/bQdeQayaefJvawk04hi0VUr5jMjAY1yAqNA3+zfY4V20i6MjauSK9hbCZQE7S71DI1ndBuZvrzaEwmYG+b3Lxe5tMkCDZ/gUVpJFkev6/baSkDbzFT+M4jxXhSizbnlKA7QjUnITQspUVRC2cta445+isyo+FHcIm9SIZMiBwHlvJlL4BFY5E39NXFakUUSrEfv+3qQYHCm318QcOMtywqrgK3euz41E8Ey0kc6/rcVD2CX3iiiY/pd0pramk0TCmoMQAn+ehbtmEpS39VUIBbxi4LxiJ4RBWZNpVzpwjgYNIy0Cbdbzpl5LKOhL1SYKc5lHmWXeC3VRmoHKhQuJ+APwlIP6cpEvDervqmjYigIVuPZKhnI66/09Ooee/0JAvvH4Wy5LnBjauvXQa+02UTo6CCRjmMxmqSvZhbZqVVEg5u19dYL76zUUHVBPoCrJVEMYJAW+cgLOpUh9cSnVfcgztXelbBRSdSMQydvKJRp7bgfpHB2NCuWhS6OI7kmwei6z4H/wqs8bzIVT5eGCdt68sYvOIydXemjrxtoKcPX0A/XI73LYhTq2eAXZl0syGg8dICXpvyEMlTbJYfHMpAQIg8W/EdG52CJLe2k56wPT/2wShEcgXBZ7y2hkxPE+IXcEbhZWdsi20F6/8ZvMZnwdwnGpvxSu2PBWxGT8hZNHU3AEwmIW11ccoVxxtyx61vClN vHegSY1n 7n/CmY1pxdOAM4A3NgPNMCeNP3ERmMTBT+2mWk4GT++6WF2bCwwirg6fgwq5qEiW8yi23DTcc0+Hr2hgVwIDa/vDoXwuUXBgoigZgQBPzWGpA4MbC+Ph5hMs+9v2Sy1plAysC7z1HWcifCAzMJa9vUMHih4YJdxM+J3U+BfelnQA8aODFta/L4eY21SRJSBoKnCyRF9gmKdS4feVB+xeVXOZIgr/Fq3XI7lzfbV0VD/Mk7/pTrbu1Vipp3AkxQSjXsB8Z7a/RZDKqpgGTjrgo3o3JxCC7Y9Ksh/8MfZ50upAvaAxVQSGqUkE//ygR1Ddm5lF2WwnYDXk3cCg4BItcqwb9N3DKGs9uXdCwkGnK3JlhiJVCB0fVuwf14Drno6PruDdZaVk6mRFnO5s5ii5ZVrzJHXyMot6lg1AjFekqgwuqenOi8IwGGZTQHNAOm8aLNEIbLckAG8EHyTe4fqlCslOt/D8Q1qAvx43T 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 Fri, Feb 09, 2024 at 04:41:36PM -0800, Kees Cook wrote: > On Fri, Feb 09, 2024 at 03:30:37PM +0300, Alexey Dobriyan wrote: > > On Mon, Feb 05, 2024 at 04:48:08AM -0800, Kees Cook wrote: > > > On Mon, Feb 05, 2024 at 12:51:43PM +0300, Alexey Dobriyan wrote: > > > > +#define ARCH_AT_PAGE_SHIFT_MASK \ > > > > + do { \ > > > > + u32 val = 1 << 12; \ > > > > + if (boot_cpu_has(X86_FEATURE_PSE)) { \ > > > > + val |= 1 << 21; \ > > > > + } \ > > > > + if (boot_cpu_has(X86_FEATURE_GBPAGES)) { \ > > > > + val |= 1 << 30; \ > > > > + } \ > > > > > > Can we use something besides literal "12", "21", and "30" values here? > > > > Ehh, no, why? Inside x86_64 the page shifts are very specific numbers, > > they won't change. > > Well, it's nicer to have meaningful words to describe these things. Not really. Inside specific arch page shifts are fixed, so using names is just more macros one need to remember. If I were to invent names (which I wouldn't), the best names are PAGE_SHIFT PAGE_SHIFT2 PAGE_SHIFT3 ... with PAGE_SHIFT2, PAGE_SHIFT3 being optional macros if arch doesn't support multiple page sizes. > In fact, PAGE_SHIFT already exists for 12, and HPAGE_SHIFT already exists > for 21. Please use those, and add another, perhaps GBPAGE_SHIFT, for 30. HPAGE_SHIFT is bad name, H doesn't describe anything unless arch is known. Hugepages is marketing name. If GBPAGE_SHIFT is good name, then HPAGE_SHIFT is bad name, it should've been MBPAGE_SHIFT, which wrong because it is 2 MiB not 1 MiB. BTW parisc has REAL_HPAGE_SHIFT !