|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] x86/PV: adjust APPEND_CALL() to comply to Misra rule 18.2
commit 6c98c5368f846d7f35f63b434180e4d48fb87f56
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Mon Oct 12 09:39:13 2026 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Mon Oct 12 09:39:13 2026 +0200
x86/PV: adjust APPEND_CALL() to comply to Misra rule 18.2
While casting to pointer types may be more natural there, the subtraction
then ends up violating "Subtraction between pointers shall only be applied
to pointers that address elements of the same array". Use long arithmetic
instead.
No functional change intended.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Reviewed-by: Dmytro Prokopchuk <dmytro_prokopchuk1@xxxxxxxx>
---
xen/arch/x86/pv/emul-priv-op.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index fd9b533e57..9d41f787f2 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -92,7 +92,8 @@ static io_emul_stub_t *io_emul_stub_setup(struct priv_op_ctxt
*ctxt, u8 opcode,
#define APPEND_BUFF(b) ({ memcpy(p, b, sizeof(b)); p += sizeof(b); })
#define APPEND_CALL(f) \
({ \
- long disp = (void *)(f) - (stub_va + (p - ctxt->io_emul_stub) + 5); \
+ long disp = (long)(f) - \
+ ((long)stub_va + (p - ctxt->io_emul_stub) + 5); \
BUG_ON((int32_t)disp != disp); \
*p++ = 0xe8; \
*(int32_t *)p = disp; p += 4; \
--
generated by git-patchbot for /home/xen/git/xen.git#master
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |