On 01.12.2023 14:44, Simone Ballarin wrote: > On 01/12/23 14:03, Jan Beulich wrote: >> On 01.12.2023 12:48, Julien Grall wrote: >>> On 01/12/2023 11:37, Simone Ballarin wrote: >>>> --- a/xen/arch/arm/include/asm/regs.h >>>> +++ b/xen/arch/arm/include/asm/regs.h >>>> @@ -48,7 +48,7 @@ static inline bool regs_mode_is_32bit(const struct >>>> cpu_user_regs *regs) >>>> >>>> static inline bool guest_mode(const struct cpu_user_regs *r) >>>> { >>>> - unsigned long diff = (char *)guest_cpu_user_regs() - (char *)(r); >>>> + unsigned long diff = (const uintptr_t)guest_cpu_user_regs() - (const >>>> uintptr_t)(r); >>> >>> NIT: The const should not be necessary here. Am I correct? >>> >>>> --- a/xen/arch/x86/include/asm/regs.h >>>> +++ b/xen/arch/x86/include/asm/regs.h >>>> @@ -6,7 +6,8 @@ >>>> >>>> #define guest_mode(r) >>>> \ >>>> ({ >>>> \ >>>> - unsigned long diff = (char *)guest_cpu_user_regs() - (char *)(r); >>>> \ >>>> + unsigned long diff = (const uintptr_t)guest_cpu_user_regs() - >>>> \ >>>> + (const >>>> uintptr_t(r)); \ >>> >>> Was this compiled on x86? Shouldn't the last one be (const uintptr_t)(r))? >> >> And again with the stray const-s dropped and with indentation adjusted. >> > > I will remove the const in the first parameter and fix the indentation > in the following way: > > unsigned long diff = (uintptr_t)guest_cpu_user_regs() - \ > (const uintptr_t)(r); \
That still looks to be one off, but (supported by the \ placement) possibly merely an artifact of how your or my mail client is configured. It looks right at https://lists.xen.org/archives/html/xen-devel/2023-12/msg00057.html. Jan