Quoting Janis Schoetterl-Glausch (2022-11-22 14:10:41) > On Tue, 2022-11-22 at 08:47 +0100, Thomas Huth wrote: > > On 17/11/2022 23.17, Janis Schoetterl-Glausch wrote: [...] > > > Supported flags: > > > * ``KVM_S390_MEMOP_F_CHECK_ONLY`` > > > * ``KVM_S390_MEMOP_F_SKEY_PROTECTION`` > > > + * ``KVM_S390_MEMOP_F_CMPXCHG`` > > > + > > > +The semantics of the flags common with logical acesses are as for logical > > > +accesses. > > > + > > > +For write accesses, the KVM_S390_MEMOP_F_CMPXCHG might be supported. > > > > I'd maybe merge this with the last sentence: > > > > For write accesses, the KVM_S390_MEMOP_F_CMPXCHG flag is supported if > > KVM_CAP_S390_MEM_OP_EXTENSION has bit 1 (i.e. bit with value 2) set. > > Ok. > > > > ... and speaking of that, I wonder whether it's maybe a good idea to > > introduce some #defines for bit 1 / value 2, to avoid the confusion ? > > Not sure, I don't feel it's too complicated. Where would you define it? > Next to the mem_op struct? KVM_S390_MEMOP_EXTENSION_CAP_CMPXCHG? I think the define would be a good idea. Location and name sound good to me. You could also replace the hard-coded 0x3 in kvm_vm_ioctl_check_extension() when you have the define.