Hi Andrew,

On 03/12/2025 17:16, Andrew Cooper wrote:
It was reported that Xen no longer builds on Debian Trixie:

   Assembler messages:
   {standard input}:474: Error: unknown or missing system register name at 
operand 1 -- `msr TEECR32_EL1,x0'
   {standard input}:480: Error: unknown or missing system register name at 
operand 1 -- `msr TEEHBR32_EL1,x0'
   {standard input}:488: Error: unknown or missing system register name at 
operand 2 -- `mrs x0,TEECR32_EL1'
   {standard input}:494: Error: unknown or missing system register name at 
operand 2 -- `mrs x0,TEEHBR32_EL1'
   make[5]: *** [Rules.mk:249: arch/arm/domain.o] Error 1

This turns out to be an intentional change in bintuils.  ThumbEE was dropped

typo: s/binuils/binutils/

from the architecture and doesn't exist in v8 (i.e. AArch64).

Xen supports v7+virt extentions so in principle we could #ifdef CONFIG_ARM_32

typo: s/extentions/extensions/

to keep it working, but there was apparently no use of ThumbEE outside of demo
code, so simply drop it.

I am in favor of dropping support for ThumbEE for guest. But I am not sure I understand this comment. Are you saying there are no processors supporting ThumbEE where Xen would run? Asking because below, you are removing code to context switch the ThumbEE registers. But I don't see any code that would ensure the registers are trapping (i.e. HSTR.TEE is set). So wouldn't this result to a cross-VM leak on those processors?

If we really don't want to support CPU where ThumbEE is available, then we should check that "cpu_has_thumbee" is 0.

Cheers,

--
Julien Grall


Reply via email to