Re: [RFC PATCH v3 06/19] target/arm/kvm: Read all ID registers from KVM

Khushit Shah <[email protected]> Mon, 3 Aug 2026 15:47:53 +0000
Newsgroups dev.linux.lists.kvmarm,org.nongnu.qemu-arm,org.nongnu.qemu-devel
Message-ID <[email protected]>
DQoNCj4gT24gMjIgSnVsIDIwMjYsIGF0IDEyOjI04oCvUE0sIEVyaWMgQXVnZXIgPGVyaWMuYXVn
ZXJAcmVkaGF0LmNvbT4gd3JvdGU6DQo+IA0KPiAhLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwNCj4gIENBVVRJT046IEV4
dGVybmFsIEVtYWlsDQo+IA0KPiB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSENCj4gDQo+IA0KPiANCj4gT24gNy8xNi8y
NiAxMTozOCBQTSwgS2h1c2hpdCBTaGFoIHdyb3RlOg0KPj4gVHJ5IHRvIHJlYWQgYWxsIHRoZSBJ
RCByZWdpc3RlcnMgZnJvbSBLVk0uIEtWTSBtYXkgcmV0dXJuIEVOT0VOVCwgZm9yDQo+PiBJRCBy
ZWdpc3RlcnMgaXQgZG9lcyBub3Qgc3VwcG9ydCByZWFkaW5nIGZyb20gdXNlcnNwYWNlLiBJZ25v
cmUgdGhvc2UNCj4+IHJlZ2lzdGVycy4gQXMgdGhpcyBsaXN0IGlzIHNtYWxsLCBpbiBmdXR1cmUg
d2UgbWF5IGFueXdheSB3YW50IHRvDQo+PiBoYW5kbGUgdGhvc2UgcmVnaXN0ZXIgc3BlY2lhbGx5
Lg0KPj4gDQo+PiBXZSB3YW50IHRvIGRvIHRoaXMgc28gdGhhdCB3ZSBjYW4gZXhwb3NlIG1vcmUg
b3IgbGVzcyBjb21wbGV0ZQ0KPj4gaG9zdCBmZWF0dXJlIHZpZXcgdG8gbWFuYWdlbWVudCBzdGFj
aywgYXMgZm9yIG1pZ3JhdGlvbiwgd2Ugd2FudCBib3RoDQo+PiB3cml0YWJsZSBhbmQgbm9uLXdy
aXRhYmxlIElEIHJlZ2lzdGVycyB0byBtYXRjaC4NCj4+IA0KPj4gQWxzbyByZW1vdmUgdGhlIHVu
dXNlZCAnY3B1JyBhcmdzIHRocm91Z2hvdXQgdGhlIGNhbGwtY2hhaW4uDQo+IEkgd2lsbCBpbnRl
Z3JhdGUgdGhpcyBmaXggaW4gdGhlIHBhcmVudCBzZXJpZXMNCg0KQWNrZWQuDQoNCj4+IA0KPj4g
U2lnbmVkLW9mZi1ieTogS2h1c2hpdCBTaGFoIDxraHVzaGl0LnNoYWhAbnV0YW5peC5jb20+DQo+
PiAtLS0NCj4+IHRhcmdldC9hcm0va3ZtLmMgfCAzOCArKysrKysrKysrKysrKysrKysrLS0tLS0t
LS0tLS0tLS0tLS0tLQ0KPj4gMSBmaWxlIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDE5IGRl
bGV0aW9ucygtKQ0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEvdGFyZ2V0L2FybS9rdm0uYyBiL3Rhcmdl
dC9hcm0va3ZtLmMNCj4+IGluZGV4IDYzYjM3MjdlMDUuLjQyZmY3MzFmNmUgMTAwNjQ0DQo+PiAt
LS0gYS90YXJnZXQvYXJtL2t2bS5jDQo+PiArKysgYi90YXJnZXQvYXJtL2t2bS5jDQo+PiBAQCAt
MjkyLDE0ICsyOTIsMTQgQEAgc3RhdGljIGludCBrdm1fZmVhdHVyZV9pZHhfdG9faWRyZWdzX2lk
eChpbnQga2lkeCkNCj4+IH0NCj4+IA0KPj4gLyoNCj4+IC0gKiBnZXRfaG9zdF9jcHVfaWRyZWdz
OiBSZWFkIGFsbCB0aGUgd3JpdGFibGUgSUQgcmVnIGhvc3QgdmFsdWVzDQo+PiArICogZ2V0X2hv
c3RfY3B1X2lkcmVnczogUmVhZCBhbGwgdGhlIElEIHJlZyBob3N0IHZhbHVlcw0KPj4gICoNCj4+
IC0gKiBOZWVkIHRvIGJlIGNhbGxlZCBvbmNlIHRoZSB3cml0YWJsZSBtYXNrIGhhcyBiZWVuIHBv
cHVsYXRlZA0KPj4gLSAqIE5vdGUgd2UgbWF5IHdhbnQgdG8gcmVhZCBhbGwgdGhlIGtub3duIGlk
IHJlZ3MgYnV0IHNvbWUgb2YgdGhlbSBhcmUgbm90DQo+PiAtICogd3JpdGFibGUgYW5kIHJldHVy
biBhbiBlcnJvciwgaGVuY2UgdGhlIGNob2ljZSBvZiByZWFkaW5nIG9ubHkgdGhvc2Ugd2hpY2gN
Cj4+IC0gKiBhcmUgd3JpdGFibGUuIFRob3NlIGFyZSBhbHNvIHJlYWRhYmxlIQ0KPj4gKyAqIFdl
IGN1cnJlbnRseSB0cnkgdG8gcmVhZCBhbGwgdGhlIHJlZ2lzdGVycy4gSWYgdGhlIHJlYWQgZmFp
bHMgd2l0aA0KPj4gKyAqIEVOT0VOVCAoS1ZNIGRvZXMgbm90IGlkZW50aWZ5IHRoZSBJRCByZWdp
c3RlcikgaWdub3JlIGl0Lg0KPj4gKyAqIFNvbWUgb2YgdGhlIHJlZ2lzdGVycyB0aGF0IGVycm9y
ZWQgd2l0aCBFTk9FTlQgd2lsbCBhbnl3YXkgbmVlZCBzcGVjaWFsDQo+PiArICogaGFuZGxpbmcu
DQo+PiAgKi8NCj4+IC1zdGF0aWMgaW50IGdldF9ob3N0X2NwdV9pZHJlZ3MoQVJNQ1BVICpjcHUs
IGludCBmZCwgQVJNSG9zdENQVUZlYXR1cmVzICphaGNmKQ0KPj4gK3N0YXRpYyBpbnQgZ2V0X2hv
c3RfY3B1X2lkcmVncyhpbnQgZmQsIEFSTUhvc3RDUFVGZWF0dXJlcyAqYWhjZikNCj4+IHsNCj4+
ICAgICBpbnQgZXJyID0gMDsNCj4+ICAgICBpbnQgaTsNCj4+IEBAIC0zMTAsMjYgKzMxMCwyNiBA
QCBzdGF0aWMgaW50IGdldF9ob3N0X2NwdV9pZHJlZ3MoQVJNQ1BVICpjcHUsIGludCBmZCwgQVJN
SG9zdENQVUZlYXR1cmVzICphaGNmKQ0KPj4gICAgICAgICB1aW50NjRfdCAqcmVnOw0KPj4gICAg
ICAgICBpbnQgcmV0Ow0KPj4gDQo+PiAtICAgICAgICBpZiAoIXN5c3JlZ2Rlc2MtPndyaXRhYmxl
X21hc2spIHsNCj4+IC0gICAgICAgICAgICBjb250aW51ZTsNCj4+IC0gICAgICAgIH0NCj4+IC0N
Cj4+ICAgICAgICAgcmVnID0gJmFoY2YtPmlzYXIuaWRyZWdzW2ldOw0KPj4gICAgICAgICByZXQg
PSByZWFkX3N5c19yZWc2NChmZCwgcmVnLCBpZHJlZ3Nfc3lzcmVnX3RvX2t2bV9yZWcoc3lzcmVn
KSk7DQo+PiAtICAgICAgICB0cmFjZV9nZXRfaG9zdF9jcHVfaWRyZWdzKHN5c3JlZ2Rlc2MtPm5h
bWUsICpyZWcpOw0KPj4gICAgICAgICBpZiAocmV0KSB7DQo+PiAtICAgICAgICAgICAgZXJyb3Jf
cmVwb3J0KCIlcyBlcnJvciByZWFkaW5nIHZhbHVlIG9mIGhvc3QgJXMgcmVnaXN0ZXIgKCVtKSIs
DQo+PiAtICAgICAgICAgICAgICAgICAgICAgICAgIF9fZnVuY19fLCBzeXNyZWdkZXNjLT5uYW1l
KTsNCj4+IC0NCj4+IC0gICAgICAgICAgICBlcnIgPSByZXQ7DQo+PiArICAgICAgICAgICAgaWYg
KGVycm5vID09IEVOT0VOVCkgew0KPj4gKyAgICAgICAgICAgICAgICB3YXJuX3JlcG9ydCgiJXMg
ZXJyb3IgcmVhZGluZyB2YWx1ZSBvZiBob3N0ICVzIHJlZ2lzdGVyICINCj4+ICsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICIoRU5PRU5UKSIsIF9fZnVuY19fLCBzeXNyZWdkZXNjLT5u
YW1lKTsNCj4gaWYgdGhlcmUgYXJlIGV4cGVjdGVkIGNhc2VzIHdoZXJlIHRoZSByZWFkIGlzIGZh
aWxpbmcgSSBkb24ndCB0aGluayB3ZQ0KPiB3YW50IHRvIHdhcm4uIEFkZCBhIHRyYWNlIHBvaW50
IGluc3RlYWQuDQoNCkFja2VkLCB3aWxsIGNoYW5nZSB0byB0cmFjZXBvaW50IGluIHY0Lg0KDQo+
PiArICAgICAgICAgICAgfSBlbHNlIHsNCj4+ICsgICAgICAgICAgICAgICAgZXJyb3JfcmVwb3J0
KCIlcyBlcnJvciByZWFkaW5nIHZhbHVlIG9mIGhvc3QgJXMgcmVnaXN0ZXIiDQo+PiArICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICIgKCVtKSIsIF9fZnVuY19fLCBzeXNyZWdkZXNjLT5uYW1l
KTsNCj4+ICsgICAgICAgICAgICAgICAgZXJyID0gcmV0Ow0KPj4gKyAgICAgICAgICAgIH0NCj4+
ICAgICAgICAgfQ0KPj4gKyAgICAgICAgdHJhY2VfZ2V0X2hvc3RfY3B1X2lkcmVncyhzeXNyZWdk
ZXNjLT5uYW1lLCAqcmVnKTsNCj4+ICAgICB9DQo+PiAgICAgcmV0dXJuIGVycjsNCj4+IH0NCj4+
IA0KPj4gDQo+PiBzdGF0aWMgdm9pZA0KPj4gLWt2bV9hcm1fZ2V0X2hvc3RfY3B1X2ZlYXR1cmVz
KEFSTUNQVSAqY3B1LCBBUk1Ib3N0Q1BVRmVhdHVyZXMgKmFoY2YpDQo+PiAra3ZtX2FybV9nZXRf
aG9zdF9jcHVfZmVhdHVyZXMoQVJNSG9zdENQVUZlYXR1cmVzICphaGNmKQ0KPj4gew0KPj4gICAg
IC8qIElkZW50aWZ5IHRoZSBmZWF0dXJlIGJpdHMgY29ycmVzcG9uZGluZyB0byB0aGUgaG9zdCBD
UFUsIGFuZA0KPj4gICAgICAqIGZpbGwgb3V0IHRoZSBBUk1Ib3N0Q1BVQ2xhc3MgZmllbGRzIGFj
Y29yZGluZ2x5LiBUbyBkbyB0aGlzDQo+PiBAQCAtNDE1LDggKzQxNSw4IEBAIGt2bV9hcm1fZ2V0
X2hvc3RfY3B1X2ZlYXR1cmVzKEFSTUNQVSAqY3B1LCBBUk1Ib3N0Q1BVRmVhdHVyZXMgKmFoY2Yp
DQo+PiAgICAgICAgIFNFVF9JRFJFRygmYWhjZi0+aXNhciwgSURfQUE2NFBGUjAsIDB4MDAwMDAw
MTEpOyAvKiBFTDEmMCwgQUFyY2g2NCBvbmx5ICovDQo+PiAgICAgICAgIGVyciA9IDA7DQo+PiAg
ICAgfSBlbHNlIHsNCj4+IC0gICAgICAgIC8qIE1ha2Ugc3VyZSBhbGwgd3JpdGFibGUgSUQgcmVn
IHZhbHVlcyBhcmUgaW5pdGlhbGl6ZWQgKi8NCj4+IC0gICAgICAgIGVyciB8PSBnZXRfaG9zdF9j
cHVfaWRyZWdzKGNwdSwgZmQsIGFoY2YpOw0KPj4gKyAgICAgICAgLyogVHJ5IHRvIHJlYWQgYWxs
IHRoZSBJRCByZWdpc3RlcnMgKi8NCj4+ICsgICAgICAgIGVyciB8PSBnZXRfaG9zdF9jcHVfaWRy
ZWdzKGZkLCBhaGNmKTsNCj4+IA0KPj4gICAgICAgICAvKg0KPj4gICAgICAgICAgKiB0ZW1wb3Jh
cmlseSBvdmVycmlkZSB0aGUgQ0xJRFJfRUwxIHZhbHVlIHNpbmNlIHNvbWUgaG9zdCB2YWx1ZXMN
Cj4+IEBAIC01OTUsNyArNTk1LDcgQEAgdm9pZCBrdm1fYXJtX3NldF9jcHVfZmVhdHVyZXNfZnJv
bV9ob3N0KEFSTUNQVSAqY3B1KQ0KPj4gICAgIGdfZnJlZSh3cml0YWJsZV9tYXApOw0KPj4gDQo+
PiAgICAgaWYgKCFhcm1faG9zdF9jcHVfZmVhdHVyZXMuZHRiX2NvbXBhdGlibGUpIHsNCj4+IC0g
ICAgICAgIGt2bV9hcm1fZ2V0X2hvc3RfY3B1X2ZlYXR1cmVzKGNwdSwgJmFybV9ob3N0X2NwdV9m
ZWF0dXJlcyk7DQo+PiArICAgICAgICBrdm1fYXJtX2dldF9ob3N0X2NwdV9mZWF0dXJlcygmYXJt
X2hvc3RfY3B1X2ZlYXR1cmVzKTsNCj4+ICAgICB9DQo+PiANCj4+ICAgICBjcHUtPmt2bV90YXJn
ZXQgPSBhcm1faG9zdF9jcHVfZmVhdHVyZXMudGFyZ2V0Ow0KPiBUaGFua3MNCj4gDQo+IEVyaWMN
Cg0KDQo=