|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2] arm: Fix PT_PT table descriptor value and comment
On 18-May-26 13:45, Gabriel Quintáns Souto wrote: > Per ARMv7-A/ARMv8-A ARM, bits [11:2] of table descriptors are ignored by > hardware. The original comment incorrectly described block/page descriptor > fields (nG, SH, AP, NS, ATTR) which do not Please trim lines to 80 chars exist in the table descriptor format. > > Set PT_PT to 0x403: > - Bit 0 (P): Valid bit (required) > - Bit 1 (T): Table descriptor type (required) > - Bit 10 (AF): Access flag (future-proof for FEAT_HAFT) There's no FEAT_HAFT on AArch32, bit 10 is purely ignored, so why setting it also for arm32? On arm32 it should be 0x3. On arm64, thinking more about it, setting AF for table descriptor would make sense only if we enable HAFT in TCR which we don't. Therefore, for consistency you should use 0x3 for both arm32 and arm64. > > Hardware ignores bits [11:2] but setting AF prepares for ARMv9's FEAT_HAFT. > Using 0x403 rather than minimal 0x3 provides forward compatibility while > avoiding unnecessary reserved bits. > > This updates both arm32 and arm64 for consistency. > > Signed-off-by: Gabriel Quintáns Souto <gabi.qs.mail@xxxxxxxxx> > > --- > Changes in v2: > - Apply fix to both arm32 and arm64 > - Use 0x403 instead of 0x743 > --- > xen/arch/arm/arm32/mmu/head.S | 2 +- > xen/arch/arm/arm64/mmu/head.S | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/xen/arch/arm/arm32/mmu/head.S b/xen/arch/arm/arm32/mmu/head.S > index 5032e6c075..cab7be0621 100644 > --- a/xen/arch/arm/arm32/mmu/head.S > +++ b/xen/arch/arm/arm32/mmu/head.S > @@ -8,7 +8,7 @@ > #include <asm/page.h> > #include <asm/early_printk.h> > > -#define PT_PT 0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */ > +#define PT_PT 0x403 /* AF=1 T=1 P=1 (bits [11:2] ignored in table > descriptors) */ Don't exceed 80 chars line length. Also, you don't need to provide reasoning here for ignored bits. ~Michal
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |