qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* KVM sysreg ids for FEAT_SYSREG128
@ 2025-08-13 23:27 Richard Henderson
  2025-08-14  8:11 ` Marc Zyngier
  0 siblings, 1 reply; 3+ messages in thread
From: Richard Henderson @ 2025-08-13 23:27 UTC (permalink / raw)
  To: kvmarm, qemu-devel
  Cc: Marc Zyngier, Peter Maydell, Oliver Upton, Alex Bennée

Hiya,

QEMU (ab)uses the kvm encoding of system register ids in the migration stream.  As we 
implement support for FEAT_D128, it would be good to agree on an encoding for the 128-bit 
registers so that we can avoid complications with migration later.

I don't think this is terribly complicated.  Simply adjust the value in the 
KVM_REG_SIZE_MASK field from U64 to U128.  E.g.

PAR_EL1 (64-bit)	(__ARM64_SYS_REG(3, 0, 7, 4, 0) | KVM_REG_SIZE_U64)
PAR_EL1 (128-bit)	(__ARM64_SYS_REG(3, 0, 7, 4, 0) | KVM_REG_SIZE_U128)

This will currently be cleanly rejected by index_to_params, resulting in ENOENT for the 
ioctl.  When KVM grows support for D128 guests, kvm_sys_reg_{get,set}_user can select the 
read/write code path based on reg->id & KVM_REG_SIZE_MASK.

Comments?


r~


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-08-14  9:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-13 23:27 KVM sysreg ids for FEAT_SYSREG128 Richard Henderson
2025-08-14  8:11 ` Marc Zyngier
2025-08-14  9:48   ` Richard Henderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).