On Mon, 2025-04-28 at 20:22 -0700, Chang S. Bae wrote: > > > > This patch adds struct vcpu_fpu_config, with new fields user_size, > > user_features. Then those fields are used to configure the guest FPU, where > > today it just uses fpu_user_cfg.default_features, etc. > > > > KVM doesn't refer to any of those fields specifically, but since they are > > used > > to configure struct fpu_guest they become part of KVM's uABI. > > Today, fpu_alloc_guest_fpstate() -> __fpstate_reset() sets > vcpu->arch.guest_fpu.fpstate->user_xfeatures using > fpu_user_cfg.default_features. > > Are you really saying that switching this to > guest_default_cfg.user_features would constitute a uABI change? I'm not saying there is a uABI change... I don't see a change in uABI. > Do you > consider fpu_user_cfg.default_features to be part of the uABI or > anything else? KVM_GET_XSAVE is part of KVM's API. It uses fields configured in struct fpu_guest. If fpu_user_cfg.default_features changes value (in the current code) it would change KVM's uABI. But I'm starting to suspect we are talking past each other. It should be simple. Two new configuration fields are added in this patch that match the existing concept and values of existing configurations fields. Per Sean, there are no plans to have them diverge. So why add them. If anyone feels strongly, I won't argue. But I think there is just miscommunication.