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

Re: [PATCH v4 3/7] arm/mpu: Provide and populate MPU C data structures


  • To: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Luca Fancellu <Luca.Fancellu@xxxxxxx>
  • Date: Wed, 30 Apr 2025 06:56:00 +0000
  • Accept-language: en-GB, en-US
  • Arc-authentication-results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com])
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
  • Arc-message-signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=4SV+kIMnUPslIWXoOI6vmVh8nATVsvSEdmSrG+f1fDc=; b=ltcuJktrFvTLrt72MMjc9YYcE3eRcbBYo4zWvc9VFwiaWcnYVI/SLeaH2WBfqMa4z3qwOQHduBPVM3S/R/dh5uoLPTEnMgf3aKElMAecRgm7cgPMiCxpJTxkc4+Np0jxv4y1dl3hr62h2tVtzZ0vfFIVUMTcKBFYtajOUgEaq1xX3uXWeBRiitHldCUVTBKcKzhB0OB4Kp4vur9ggIslgaOJgrf8XOsROa/9jsVDrnUlGNwrG613QcjurgkhJlxLac1F6z1eJPFE7oFJ3yEbKsnrbcVWJhnUI+/IF698nFtbt7h7m8bfGjPNNcE3fuWr2T7SDPdu6qK8/bZt0dCDwA==
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=4SV+kIMnUPslIWXoOI6vmVh8nATVsvSEdmSrG+f1fDc=; b=UX+FddLZPTCb9vV99LC5lV4TXBl6xJOHylS0VDc1rQgKOSciifpmJPLK40vIpoJKyhXTkKJJHJmT5OgKP4g9loQu+hHQnWZaid6DXvArnOpm2RmXqlqG0slDJEhT6PthUEbEocBnIrHZ4Dlfuw5j88wmUHS3QQGFLzHqmYpxQv3n3DA+dQowhbl14rbh+7CWR096x1mSIF2Kfnx6MvQSteAlmE0BpbhtNpHu30pTfOGSlZFusP2x4W/3AbPpBZILs1vg34h0XClX9ZDgIdsM4fCBivLTeOYnjvG8uCFHYNDnBBXRk/tedq2sqMHJSDMhG7TCIAUgZ6aVKTAzJrJebQ==
  • Arc-seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=Ar1K0lsgMoeeDwFoFy08uHLp1EIYiCoYQEMNC6o38lZGdmB9Bc3ci7b/XrV2/CAXhk3iyfVRFsQrQx4WunZSaHOKSBm5Kh5wXL6RYSNs7EiBLepb+pNIwsFlMCjZO/4OaPypOr0ptOH6/FasffH9DeJ8bagNw+4zX6qpZDDqSBpMjvfOjQdCFmxnATObtA8o/P6B8d6DEqST6zu/cWIKGuCci90fXuybIBkis+3G8+/0kBoI7PDGFQWUMFIMjsvTwl1M6dbkN/xGAUox677rZ+Sa9N5dCq+rWk4lLxEpefbs9Ojogw3FPgvja8PhBxqV0ndo+jn+MrQRyxvNsY0adg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KKtgrfgYbiJ7G8codUlLxBd2RHel0e33EjLQlPwhnks1IJFSeBjvSKnPWHAyOwR06PFnRLBKgMeH33fSVkVS4XTeHWhs8JsWDMJ6tBBowVOCqKGedJTLU6JZcwjEyAOlq+NukpozedsF3W+v7Qxsj6Se7R/eHtE9GofTo81fjZxSVVuDYnE0LMoGlF8x3p3+vPQcBCtv/vr2Ihz0ug/gOVT9907uk7jg2/TTy4J+97NuQgLpMEkTcWIj7OIuThkeBMUqZ7GE5GZ38V7mQNO6E+IrvWpamb8NJekns4ujzAbjC/ndz5HT3/1qSYbDkTinIGYrjWDcumVoxE1SJjZzBw==
  • Authentication-results-original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
  • Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
  • Delivery-date: Wed, 30 Apr 2025 06:56:52 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Nodisclaimer: true
  • Thread-index: AQHbuRprYh16Ok81YUq8WQ3ZmeL+z7O7x4MA
  • Thread-topic: [PATCH v4 3/7] arm/mpu: Provide and populate MPU C data structures

Hi all,

> diff --git a/xen/arch/arm/include/asm/mpu/regions.inc 
> b/xen/arch/arm/include/asm/mpu/regions.inc
> index 47868a152662..dc0306f8c5fc 100644
> --- a/xen/arch/arm/include/asm/mpu/regions.inc
> +++ b/xen/arch/arm/include/asm/mpu/regions.inc
> @@ -1,22 +1,50 @@
> /* SPDX-License-Identifier: GPL-2.0-only */
> 
> +#include <asm/bitmap-op.inc>
> #include <asm/mpu.h>
> #include <asm/sysregs.h>
> 
> /* Backgroud region enable/disable */
> #define SCTLR_ELx_BR    BIT(17, UL)
> 
> +#define REGION_DISABLED_PRLAR   0x00    /* NS=0 ATTR=000 EN=0 */
> #define REGION_NORMAL_PRLAR     0x0f    /* NS=0 ATTR=111 EN=1 */
> #define REGION_DEVICE_PRLAR     0x09    /* NS=0 ATTR=100 EN=1 */
> 
> +#define PRLAR_ELx_EN            0x1
> +
> +#ifdef CONFIG_ARM_64
> +#define XEN_MPUMAP_ENTRY_SHIFT  0x4     /* 16 byte structure */
> +
> +.macro store_pair reg1, reg2, dst
> +        stp \reg1, \reg2, [\dst]
> +.endm
> +
> +.macro invalidate_dcache_one reg
> +        dc ivac, \reg
> +.endm
> +
> +#else
> +#define XEN_MPUMAP_ENTRY_SHIFT  0x2     /* 8 byte structure */

This should be 0x3, my mistake! 

Cheers,
Luca


 


Rackspace

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