Received: by 2002:a05:6a10:413:0:0:0:0 with SMTP id 19csp707846pxp; Fri, 11 Mar 2022 12:56:39 -0800 (PST) X-Google-Smtp-Source: ABdhPJzTkEP9JTYJpj80iantAWiMUJF/DKVQpY5QPtETTMFo5VvQvUrsNRQ5h3YFrd6f4nO/0oex X-Received: by 2002:a17:903:11c9:b0:151:9521:d5c7 with SMTP id q9-20020a17090311c900b001519521d5c7mr12129370plh.73.1647032199638; Fri, 11 Mar 2022 12:56:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1647032199; cv=none; d=google.com; s=arc-20160816; b=uWeMJ40IafJBWV2t1vTzq4kQVyJNR2CCXRC+J92XalBoNr/zMXfaJ9w2A/gBMaS6eL X3eNjj38EvuNkGSuVLFo3UF2Dp1Fxk+jFBdmeG0iM7WVTnR+Xr4MdnaB5SPyrK/6iWE+ X1H3W8cN7KFEdZU9kgeR4utu1aA1Q/aRlvkt+U0wPhgNzXOmxndoHHBNGvX0+pZ6DbW/ 0PGfoLmtylH4b19jkxPl2B3Yfg9V9IeQPfu1fs452elyrMLlUy55kHSVqSRkppe/QFt/ y+l08VakV4JAsBo7LvDetabDZ+OrOv5KYFZqbXBi3+t4tSewLSkXWwTMtOoq4Qp/FW0y Y+8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=xQpXONS4gxIL0JhIjiikImZIh+pGJvOrjv8klstJ6pc=; b=mF3DPx88KLld9hxwOPBF+aL0RKahFV7vQuq2wMmv6Yt3c6vvwraU+Sy/4Q4QGgf76P JY6VtrZS1tmPfzTrdajsCub6uYcL1HzqtPgce2wdYvrcfiJ2ZSQy1NsTumN7xOFQSUoS QqWOmu6oyuoINiJhQiuqmSNlR2Q6Dj/vWLBa4Ehbhb3qmu8XSdfnGYSI74cu8uetRcY/ VfmiJjD8x10PIDkxrWkwQqLb9DeM+407+ePTaRWyBoz97/X0tON3JiIHhy7cKOaKInct RxLFsf4Nu0PEOxzJW3IUOom4EquU/Fgk/WxpxL6de/dXPvVyWadHvoXSp5WRxKvNJDXI 0Emg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=YvpOoRUa; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id s200-20020a632cd1000000b0038011732641si8804722pgs.579.2022.03.11.12.56.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Mar 2022 12:56:39 -0800 (PST) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=YvpOoRUa; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 034651F7693; Fri, 11 Mar 2022 12:47:11 -0800 (PST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345241AbiCKA7t (ORCPT + 99 others); Thu, 10 Mar 2022 19:59:49 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35426 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344877AbiCKA7o (ORCPT ); Thu, 10 Mar 2022 19:59:44 -0500 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 181C712D09E for ; Thu, 10 Mar 2022 16:58:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1646960322; x=1678496322; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=9ygcwAbQ0NfIqlDdywkiojUz0KGKAHWj5E1qd9qQFb4=; b=YvpOoRUaQd+xITTeGZ5DoGlkBCKTaEOtXccDm6nK2eUykLCki+xZwb+z wxBqnIJqXB5sxZCYNBEf0JKcwsNS1n83vYsA/k7ZBcYFeU2ZcUYY5tqjw qDCnMXfiNjl6XQEq7jWpjZWaF8AUyoPR7sBvbaTjL+8nz/zqQM1wjOev1 NSa7UL+trZPxn1B5GRSGLKhpLl5aiCYKB9V1WxSvYuW6OwsQY2QGAzQZl 5O7KuZwwMkvwxL9hLOIBNm8uW8AcvwxmgKjSDs+w0/DePQ5/vOMzM1yWe XUOJ/tFSIxyBMeyTRSPnFqY1py12JIh5PzsXKbQQ7xsjbjND/uY5MJvOo Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10282"; a="255405867" X-IronPort-AV: E=Sophos;i="5.90,172,1643702400"; d="scan'208";a="255405867" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Mar 2022 16:57:59 -0800 X-IronPort-AV: E=Sophos;i="5.90,172,1643702400"; d="scan'208";a="554989246" Received: from gdavids1-mobl.amr.corp.intel.com (HELO localhost) ([10.212.65.108]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Mar 2022 16:57:49 -0800 From: ira.weiny@intel.com To: Dave Hansen , "Aneesh Kumar K.V" Cc: Ira Weiny , "Edgecombe, Rick P" , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org Subject: [PATCH 5/5] x86/pkeys: Standardize on u8 for pkey type Date: Thu, 10 Mar 2022 16:57:42 -0800 Message-Id: <20220311005742.1060992-6-ira.weiny@intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220311005742.1060992-1-ira.weiny@intel.com> References: <20220311005742.1060992-1-ira.weiny@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Ira Weiny The number of pkeys supported on x86 and powerpc are much smaller than a u16 value can hold. It is desirable to standardize on the type for pkeys. powerpc currently supports the most pkeys at 32. u8 is plenty large for that. Standardize on the pkey types by changing u16 to u8. To: Dave Hansen Cc: Aneesh Kumar K.V Signed-off-by: Ira Weiny --- arch/x86/include/asm/pgtable.h | 4 ++-- arch/x86/include/asm/pkru.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h index 8a9432fb3802..cb89f1224d8a 100644 --- a/arch/x86/include/asm/pgtable.h +++ b/arch/x86/include/asm/pgtable.h @@ -1357,7 +1357,7 @@ static inline pmd_t pmd_swp_clear_uffd_wp(pmd_t pmd) } #endif /* CONFIG_HAVE_ARCH_USERFAULTFD_WP */ -static inline u16 pte_flags_pkey(unsigned long pte_flags) +static inline u8 pte_flags_pkey(unsigned long pte_flags) { #ifdef CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS /* ifdef to avoid doing 59-bit shift on 32-bit values */ @@ -1367,7 +1367,7 @@ static inline u16 pte_flags_pkey(unsigned long pte_flags) #endif } -static inline bool __pkru_allows_pkey(u16 pkey, bool write) +static inline bool __pkru_allows_pkey(u8 pkey, bool write) { u32 pkru = read_pkru(); diff --git a/arch/x86/include/asm/pkru.h b/arch/x86/include/asm/pkru.h index 74f0a2d34ffd..06d088f06229 100644 --- a/arch/x86/include/asm/pkru.h +++ b/arch/x86/include/asm/pkru.h @@ -16,13 +16,13 @@ extern u32 init_pkru_value; #define pkru_get_init_value() 0 #endif -static inline bool __pkru_allows_read(u32 pkru, u16 pkey) +static inline bool __pkru_allows_read(u32 pkru, u8 pkey) { int pkru_pkey_bits = pkey * PKRU_BITS_PER_PKEY; return !(pkru & (PKRU_AD_BIT << pkru_pkey_bits)); } -static inline bool __pkru_allows_write(u32 pkru, u16 pkey) +static inline bool __pkru_allows_write(u32 pkru, u8 pkey) { int pkru_pkey_bits = pkey * PKRU_BITS_PER_PKEY; /* -- 2.35.1