[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 06/14] x86: Add memory type constants


  • To: Demi Marie Obenour <demi@xxxxxxxxxxxxxxxxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Wed, 14 Dec 2022 12:22:50 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=eBA5lNcjGcZD7ReAdaK7UScmScRtsExD91+lEt51eVU=; b=Em3Hxr1WjxekrkRDW65gYbeRykPxjUBHZSzvItF+QX04dXFWzYC1fsIQvR0QRk7CXgx5stlb/v06ysONXMgbSNqiS5ZSnbi5zPOLt1uuCb96Ge+BXejDzXcbZGMzVOKDbH+FesDmh1EQtwfWKjIQ0Rcc2hRP1aPnKc3pMyBT0omo2XBAQboGDCEi8j+q9HCqPUPahuB0UnmJAJvzkaUZUUj0vRDu+bW82B+owAQdjkHC5qvIXVw7F3zIEowPMhkyC/GEiZjrQxH0iRfGuedZibGfnZ5uWPwuhlQywWXTF+LqKSzkVq53MAyhD8Hvi+gz8dXsT+MociXvgaK9m90HQA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=frK/xWBkk6ehSVRjBauO1biba6QwtmRrzrPb8JIZ+6kU4QrfjbUByr5nMEqqfQzbbVQuOe3oqf7vKaBLm37iXacpEsXTS0fObOXP56M7bgVABKPOe7xUiIqR9nvMJB/RxPsYw8emmvUtPcwGop2f5uSJcjX2RbCs6s/8wvCMaxF7PCs5YNE9IKSal5zd/jaIFfTgR7uKsTE0hl5NqZWtKy9bAfTGRbq0C4rngdY9d9YSpq1UWjSlsx5Z+zcyUhkGlweb755zYKgQMv6NNyU513sQF6SYVWDHvAhvvD3f72pKLe//sm+ZGsiCi/f7YSdedvvigVa3dv/1aepmf2+XIQ==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Jun Nakajima <jun.nakajima@xxxxxxxxx>, Kevin Tian <kevin.tian@xxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Tim Deegan <tim@xxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Wed, 14 Dec 2022 11:23:07 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 13.12.2022 23:26, Demi Marie Obenour wrote:
> --- a/xen/arch/x86/include/asm/x86-defns.h
> +++ b/xen/arch/x86/include/asm/x86-defns.h
> @@ -153,4 +153,17 @@
>       (1u << X86_EXC_AC) | (1u << X86_EXC_CP) |                      \
>       (1u << X86_EXC_VC) | (1u << X86_EXC_SX))
>  
> +/* Memory types */
> +#define X86_MT_UC  _AC(0x00, ULL) /* uncachable */
> +#define X86_MT_WC  _AC(0x01, ULL) /* write-combined */
> +#define X86_MT_WT  _AC(0x04, ULL) /* write-through */
> +#define X86_MT_WP  _AC(0x05, ULL) /* write-protect */
> +#define X86_MT_WB  _AC(0x06, ULL) /* write-back */
> +#define X86_MT_UCM _AC(0x07, ULL) /* UC- */

I'm guessing that you use ULL here to simplify arithmetic when constructing
PAT MSR values, but did you also check that this doesn't lead to compilers
needlessly doing calculations in 64 bits when 32-bit (or yet more narrow)
operation would suffice?

> +#define X86_NUM_MT _AC(0x08, ULL)

This pretty certainly doesn't need ULL, and no use of _AC() at all.

> +/* Reserved memory types (cannot be used) */
> +#define X86_MT_RESERVED_1 _AC(0x02, ULL)
> +#define X86_MT_RESERVED_2 _AC(0x03, ULL)

I think it would be better if the left hand numbers matched the right hand
ones here.

Jan



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.