Hello! > > I thought about it when i developed this, but in my implementation > > affinity bits are assigned during CPU instantiation, while feature > > bits can be added later, during realize. I could tweak set_feature() > > to sync up MPIDR value but perhaps it isn't the best thing to do. > > Can we not just assign the whole thing at realize?
kvm_arch_init_vcpu() is called before realize, therefore i would have to track down whether KVM is active or not. > You need to fix the 32-bit side anyway. Actually already done in my working tree. > I still think that having the whole mpidr in the struct will > be less confusing. Ok, if you are really insisting on that, i can assign IDs where this is currently done and add feature bits in arm_cpu_realizefn(). Last argument: the rest of qemu code (property assignment, lookup in PSCI, etc) actually needs IDs without feature bits. The only function which needs full version is mpidr_read(). So does it still worth of putting AND with bitmasks everywhere? May be just rename 'mpidr' to something like 'mp_id' ? Kind regards, Pavel Fedin Expert Engineer Samsung Electronics Research center Russia