Re: [PATCH RFC v4 02/15] ACPI: processor: Register all CPUs from acpi_processor_get_info()

Jonathan Cameron <[email protected]> Wed, 10 Apr 2024 16:58:54 +0100
Newsgroups gmane.linux.ports.riscv,gmane.linux.power-management.general,gmane.linux.acpi.devel,gmane.linux.kernel.cross-arch,gmane.linux.kernel,gmane.linux.ports.arm.kernel,gmane.linux.documentation,gmane.linux.ports.ia64,gmane.linux.ports.parisc
Organization Huawei Technologies R&D (UK) Ltd.
Message-ID <[email protected]>
T24gV2VkLCAxMCBBcHIgMjAyNCAxNjoxOTo1MCArMDIwMAoiUmFmYWVsIEouIFd5c29ja2kiIDxy
YWZhZWxAa2VybmVsLm9yZz4gd3JvdGU6Cgo+IE9uIFdlZCwgQXByIDEwLCAyMDI0IGF0IDM6NTDi
gK9QTSBKb25hdGhhbiBDYW1lcm9uCj4gPEpvbmF0aGFuLkNhbWVyb25AaHVhd2VpLmNvbT4gd3Jv
dGU6Cj4gPgo+ID4gT24gV2VkLCAxMCBBcHIgMjAyNCAxNToyODoxOCArMDIwMAo+ID4gIlJhZmFl
bCBKLiBXeXNvY2tpIiA8cmFmYWVsQGtlcm5lbC5vcmc+IHdyb3RlOgo+ID4gIAo+ID4gPiBPbiBX
ZWQsIEFwciAxMCwgMjAyNCBhdCAyOjQz4oCvUE0gSm9uYXRoYW4gQ2FtZXJvbgo+ID4gPiA8Sm9u
YXRoYW4uQ2FtZXJvbkBodWF3ZWkuY29tPiB3cm90ZTogIAo+ID4gPiA+ICAKPiA+ID4gPiA+ID4g
IAo+ID4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2Jhc2UvY3B1LmMgYi9kcml2ZXJz
L2Jhc2UvY3B1LmMKPiA+ID4gPiA+ID4gPiBpbmRleCA0N2RlMGYxNDBiYTYuLjEzZDA1MmJmMTNm
NCAxMDA2NDQKPiA+ID4gPiA+ID4gPiAtLS0gYS9kcml2ZXJzL2Jhc2UvY3B1LmMKPiA+ID4gPiA+
ID4gPiArKysgYi9kcml2ZXJzL2Jhc2UvY3B1LmMKPiA+ID4gPiA+ID4gPiBAQCAtNTUzLDcgKzU1
MywxMSBAQCBzdGF0aWMgdm9pZCBfX2luaXQgY3B1X2Rldl9yZWdpc3Rlcl9nZW5lcmljKHZvaWQp
Cj4gPiA+ID4gPiA+ID4gIHsKPiA+ID4gPiA+ID4gPiAgICAgICAgIGludCBpLCByZXQ7Cj4gPiA+
ID4gPiA+ID4KPiA+ID4gPiA+ID4gPiAtICAgICAgIGlmICghSVNfRU5BQkxFRChDT05GSUdfR0VO
RVJJQ19DUFVfREVWSUNFUykpCj4gPiA+ID4gPiA+ID4gKyAgICAgICAvKgo+ID4gPiA+ID4gPiA+
ICsgICAgICAgICogV2hlbiBBQ1BJIGlzIGVuYWJsZWQsIENQVXMgYXJlIHJlZ2lzdGVyZWQgdmlh
Cj4gPiA+ID4gPiA+ID4gKyAgICAgICAgKiBhY3BpX3Byb2Nlc3Nvcl9nZXRfaW5mbygpLgo+ID4g
PiA+ID4gPiA+ICsgICAgICAgICovCj4gPiA+ID4gPiA+ID4gKyAgICAgICBpZiAoIUlTX0VOQUJM
RUQoQ09ORklHX0dFTkVSSUNfQ1BVX0RFVklDRVMpIHx8ICFhY3BpX2Rpc2FibGVkKQo+ID4gPiA+
ID4gPiA+ICAgICAgICAgICAgICAgICByZXR1cm47ICAKPiA+ID4gPiA+ID4KPiA+ID4gPiA+ID4g
SG9uZXN0bHksIHRoaXMgbG9va3MgbGlrZSBhIHF1aWNrIGhhY2sgdG8gbWUgYW5kIGl0IGFic29s
dXRlbHkKPiA+ID4gPiA+ID4gcmVxdWlyZXMgYW4gQUNLIGZyb20gdGhlIHg4NiBtYWludGFpbmVy
cyB0byBnbyBhbnl3aGVyZS4gIAo+ID4gPiA+ID4gV2lsbCBhZGRyZXNzIHRoaXMgc2VwYXJhdGVs
eS4KPiA+ID4gPiA+ICAKPiA+ID4gPgo+ID4gPiA+IFNvIGRvIHBlb3BsZSBwcmVmZXIgdGhpcyBo
YWNrLCBvciBzb21ldGhpbmcgYWxvbmcgbGluZXMgb2YgdGhlIGZvbGxvd2luZz8KPiA+ID4gPgo+
ID4gPiA+IHN0YXRpYyBpbnQgX19pbml0IGNwdV9kZXZfcmVnaXN0ZXJfZ2VuZXJpYyh2b2lkKQo+
ID4gPiA+IHsKPiA+ID4gPiAgICAgICAgIGludCBpLCByZXQgPSAwOwo+ID4gPiA+Cj4gPiA+ID4g
ICAgICAgICBmb3JfZWFjaF9vbmxpbmVfY3B1KGkpIHsKPiA+ID4gPiAgICAgICAgICAgICAgICAg
aWYgKCFnZXRfY3B1X2RldmljZShpKSkgewo+ID4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAg
IHJldCA9IGFyY2hfcmVnaXN0ZXJfY3B1KGkpOwo+ID4gPiA+ICAgICAgICAgICAgICAgICAgICAg
ICAgIGlmIChyZXQpCj4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcl93
YXJuKCJyZWdpc3Rlcl9jcHUgJWQgZmFpbGVkICglZClcbiIsIGksIHJldCk7Cj4gPiA+ID4gICAg
ICAgICAgICAgICAgIH0KPiA+ID4gPiAgICAgICAgIH0KPiA+ID4gPiAgICAgICAgIC8vUHJvYmFi
bHkganVzdCBlYXQgdGhlIGVycm9yLgo+ID4gPiA+ICAgICAgICAgcmV0dXJuIDA7Cj4gPiA+ID4g
fQo+ID4gPiA+IHN1YnN5c19pbml0Y2FsbF9zeW5jKGNwdV9kZXZfcmVnaXN0ZXJfZ2VuZXJpYyk7
ICAKPiA+ID4KPiA+ID4gSSB3b3VsZCBwcmVmZXIgc29tZXRoaW5nIGxpa2UgdGhlIGFib3ZlLgo+
ID4gPgo+ID4gPiBJIGFjdHVhbGx5IHRob3VnaHQgdGhhdCBhcmNoX3JlZ2lzdGVyX2NwdSgpIG1p
Z2h0IHJldHVybiBzb21ldGhpbmcKPiA+ID4gbGlrZSAtRVBST0JFX0RFRkVSIHdoZW4gaXQgY2Fu
bm90IGRldGVybWluZSB3aGV0aGVyIG9yIG5vdCB0aGUgQ1BVIGlzCj4gPiA+IHJlYWxseSBhdmFp
bGFibGUuICAKPiA+Cj4gPiBPay4gVGhhdCB3b3VsZCBlbmQgdXAgbG9va2luZyBtdWNoIG1vcmUg
bGlrZSB0aGUgb3JpZ2luYWwgY29kZSBJIHRoaW5rLgo+ID4gU28gd2Ugd291bGRuJ3QgaGF2ZSB0
aGlzIGxhdGUgcmVnaXN0cmF0aW9uIGF0IGFsbCwgb3Iga2VlcCBpdCBmb3IgRFQKPiA+IG9uIGFy
bTY0PyAgSSdtIG5vdCBzdXJlIHRoYXQncyBhIGNsZWFuIHNvbHV0aW9uIHRob3VnaCBsZWF2ZXMK
PiA+IHRoZSB4ODYgcGF0aCBhbG9uZS4gIAo+IAo+IEknbSBub3Qgc3VyZSB3aHkgRFQgb24gYXJt
NjQgd291bGQgbmVlZCB0byBkbyBsYXRlIHJlZ2lzdHJhdGlvbi4KClRoaXMgd2FzIG1lIGZhbHNl
bHkgdGhpbmtpbmcgYmV0dGVyIHRvIGRvIGl0IGNsb3NlIHRvZ2V0aGVyIGZvcgpEVCBhbmQgQUNQ
SS4gSXQgZGVmaW5pdGVseSBkb2Vzbid0IG5lZWQgdG8gKG9yIGl0IHdvdWxkbid0IHdvcmsgdG9k
YXkhKQoKPiAKPiBUaGVyZSBpcyB0aGlzIGNoYWluIG9mIGNhbGxzIGluIHRoZSBtYWlubGluZSB0
b2RheToKPiAKPiBkcml2ZXJfaW5pdCgpCj4gICBjcHVfZGV2X2luaXQoKQo+ICAgICBjcHVfZGV2
X3JlZ2lzdGVyX2dlbmVyaWMoKQo+IAo+IHRoZSBsYXN0IG9mIHdoaWNoIHJlZ2lzdGVycyBDUFVz
IG9uIGFybTY0L0RUIHN5c3RlbXMgSUlVQy4gSSBkb24ndCBzZWUKPiBhIG5lZWQgdG8gY2hhbmdl
IHRoaXMgYmVoYXZpb3IuCj4gCj4gT24gYXJtNjQvQUNQSSwgdGhvdWdoLCBhcmNoX3JlZ2lzdGVy
X2NwdSgpIGNhbm5vdCBtYWtlIHByb2dyZXNzIHVudGlsCj4gaXQgY2FuIGxvb2sgaW50byB0aGUg
QUNQSSBOYW1lc3BhY2UsIHNvIEkgd291bGQganVzdCBtYWtlIGl0IHJldHVybgo+IC1FUFJPQkVf
REVGRVIgb3IgZXF1aXZhbGVudCB0aGVuIGFuZCB0aGUgQUNQSSBlbnVtZXJhdGlvbiB3aWxsIGZp
bmQKPiB0aGUgQ1BVIGFuZCBiYXNpY2FsbHkgdHJlYXQgaXQgYXMgb25lIHRoYXQgaGFzIGp1c3Qg
YXBwZWFyZWQuCgpPayBzbyBnaXZpbmcgdGhpcyBhIGdvLi4uCgpBcm0gNjQgdmVyc2lvbiBvZiBh
cmNoX3JlZ2lzdGVyX2NwdSgpIGVuZGVkIHVwIGFzIHRoZSBmb2xsb3dpbmcKKG9idmlvdXNseSBu
ZWVkcyBjbGVhbmluZyB1cCwgYmlrZXNoZWRkaW5nIG9mIG5hbWluZyBldGMpCgppbnQgYXJjaF9y
ZWdpc3Rlcl9jcHUoaW50IGNwdSkKewogICAgICAgIHN0cnVjdCBjcHUgKmMgPSAmcGVyX2NwdShj
cHVfZGV2aWNlcywgY3B1KTsKICAgICAgICBhY3BpX2hhbmRsZSBhY3BpX2hhbmRsZSA9IEFDUElf
SEFORExFKCZjLT5kZXYpOwogICAgICAgIGludCByZXQ7CgoJcHJpbnRrKCIhISEhISBJTlRPIGFy
Y2hfcmVnaXN0ZXJfY3B1KCkgJXB4XG4iLCBBQ1BJX0hBTkRMRSgmYy0+ZGV2KSk7CgogICAgICAg
IGlmICghYWNwaV9kaXNhYmxlZCAmJiAhYWNwaV9oYW5kbGUpCiAgICAgICAgICAgICAgICByZXR1
cm4gLUVQUk9CRV9ERUZFUjsKICAgICAgICBpZiAoYWNwaV9oYW5kbGUpIHsKICAgICAgICAgICAg
ICAgIHJldCA9IGFjcGlfc3RhX2VuYWJsZWQoYWNwaV9oYW5kbGUpOwogICAgICAgICAgICAgICAg
aWYgKHJldCkgewogICAgICAgICAgICAgICAgICAgICAgICBwcmludGsoIkhhdmUgaGFuZGxlLCBu
b3QgZW5hYmxlZFxuIik7CiAgICAgICAgICAgICAgICAgICAgICAgIC8qIE5vdCBlbmFibGVkICov
CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXQ7CiAgICAgICAgICAgICAgICB9CiAg
ICAgICAgfQogICAgICAgIHByaW50aygiISEhISEgb253YXJkcyBhcmNoX3JlZ2lzdGVyX2NwdSgp
XG4iKTsKCiAgICAgICAgYy0+aG90cGx1Z2dhYmxlID0gYXJjaF9jcHVfaXNfaG90cGx1Z2dhYmxl
KGNwdSk7CgogICAgICAgIHJldHVybiByZWdpc3Rlcl9jcHUoYywgY3B1KTsKfQoKd2l0aCBuZXcg
dXRpbGl0eSBmdW5jdGlvbiBpbiBkcml2ZXJzL2FjcGkvdXRpbHMuYwoKaW50IGFjcGlfc3RhX2Vu
YWJsZWQoYWNwaV9oYW5kbGUgaGFuZGxlKQp7CiAgICAgICB1bnNpZ25lZCBsb25nIGxvbmcgc3Rh
OwogICAgICAgYm9vbCBwcmVzZW50LCBlbmFibGVkOwogICAgICAgYWNwaV9zdGF0dXMgc3RhdHVz
OwoKICAgICAgIGlmIChhY3BpX2hhc19tZXRob2QoaGFuZGxlLCAiX1NUQSIpKSB7CiAgICAgICAg
ICAgICAgIHN0YXR1cyA9IGFjcGlfZXZhbHVhdGVfaW50ZWdlcihoYW5kbGUsICJfU1RBIiwgTlVM
TCwgJnN0YSk7CiAgICAgICAgICAgICAgIGlmIChBQ1BJX0ZBSUxVUkUoc3RhdHVzKSkKICAgICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gLUVOT0RFVjsKCiAgICAgICAgICAgICAgIHByZXNlbnQg
PSBzdGEgJiBBQ1BJX1NUQV9ERVZJQ0VfUFJFU0VOVDsKICAgICAgICAgICAgICAgZW5hYmxlZCA9
IHN0YSAmIEFDUElfU1RBX0RFVklDRV9FTkFCTEVEOwogICAgICAgICAgICAgICBpZiAoIXByZXNl
bnQgfHwgIWVuYWJsZWQpIHsKICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLUVQUk9CRV9E
RUZFUjsKICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgIH0K
ICAgICAgIHJldHVybiAwOyAvKiBObyBfU1RBIG1lYW5zIGFsd2F5cyBvbiEgKi8KfQoJc3RydWN0
IGNwdSAqYyA9ICZwZXJfY3B1KGNwdV9kZXZpY2VzLCBwci0+aWQpOwkKCUFDUElfQ09NUEFOSU9O
X1NFVCgmYy0+ZGV2LCBkZXZpY2UpOwoKaW4gYWNwaV9wcm9jZXNzb3JfZ2V0X2luZm8oKSBhbmQg
dGhhdCBjYWxscwoKc3RhdGljIGludCBhY3BpX3Byb2Nlc3Nvcl9tYWtlX2VuYWJsZWQoc3RydWN0
IGFjcGlfcHJvY2Vzc29yICpwcikKewogICAgICAgIGludCByZXQ7CgogICAgICAgIGlmIChpbnZh
bGlkX3BoeXNfY3B1aWQocHItPnBoeXNfaWQpKQogICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9E
RVY7CgogICAgICAgIGNwdXNfd3JpdGVfbG9jaygpOwogICAgICAgIHJldCA9IGFyY2hfcmVnaXN0
ZXJfY3B1KHByLT5pZCk7CiAgICAgICAgY3B1c193cml0ZV91bmxvY2soKTsKCiAgICAgICAgcmV0
dXJuIHJldDsKfQoKSSB0aGluayBzZXR0aW5nIHRoZSBBQ1BJIGhhbmRsZSBzaG91bGQgYmUgaGFy
bWxlc3Mgb24gb3RoZXIgYXJjaGl0ZWN0dXJlcy4KSXQgc2VlbXMgbGlrZSB0aGUgb2J2aW91cyBv
bmUgdG8gc2V0IGl0IHRvIGZvciBjcHUtPmRldi4KCkJyaWVmIHRlc3RzIG9uIHNhbWUgc2V0IG9m
IERUIGFuZCBBQ1BJIG9uIHg4NiBhbmQgYXJtNjQgc2VlbSBmaW5lLgoKPiAKPiA+IElmIHdlIGdl
dCByaWQgb2YgdGhpcyBjYXRjaCBhbGwsIHNvbHV0aW9uIHdvdWxkIGJlIHRvIG1vdmUgdGhlCj4g
PiAhYWNwaV9kaXNhYmxlZCBjaGVjayBpbnRvIHRoZSBhcm02NCB2ZXJzaW9uIG9mIGFyY2hfY3B1
X3JlZ2lzdGVyKCkKPiA+IGJlY2F1c2Ugd2Ugd291bGQgb25seSB3YW50IHRoZSBkZWxheWVkIHJl
Z2lzdHJhdGlvbiBwYXRoIHRvIGJlCj4gPiB1c2VkIG9uIEFDUEkgY2FzZXMgd2hlcmUgdGhlIHF1
ZXN0aW9uIG9mIENQVSBhdmFpbGFiaWxpdHkgY2FuJ3QKPiA+IHlldCBiZSByZXNvbHZlZC4gIAo+
IAo+IEV4YWN0bHkuCj4gCj4gVGhpcyBpcyBzaW1pbGFyIChpZiBub3QgZXF1aXZhbGVudCBldmVu
KSB0byBhIENQVSBiZWNvbWluZyBhdmFpbGFibGUKPiBiZXR3ZWVuIHRoZSBjcHVfZGV2X3JlZ2lz
dGVyX2dlbmVyaWMoKSBjYWxsIGFuZCB0aGUgQUNQSSBlbnVtZXJhdGlvbi4KCj4gCj4gPiA+Cj4g
PiA+IFRoZW4sIHRoZSBBQ1BJIHByb2Nlc3NvciBlbnVtZXJhdGlvbiBwYXRoIG1heSB0YWtlIGNh
cmUgb2YgcmVnaXN0ZXJpbmcKPiA+ID4gQ1BVIHRoYXQgaGF2ZSBub3QgYmVlbiByZWdpc3RlcmVk
IHNvIGZhciBhbmQgaW4gdGhlIG1vcmUtb3ItbGVzcyB0aGUKPiA+ID4gc2FtZSB3YXkgcmVnYXJk
bGVzcyBvZiB0aGUgYXJjaGl0ZWN0dXJlIChtb2R1bG8gc29tZSBhcmNoLXNwZWNpZmljCj4gPiA+
IHN0dWZmKS4gIAo+ID4KPiA+IElmIEkgdW5kZXJzdGFuZCBjb3JyZWN0bHksIGluIGFjcGlfcHJv
Y2Vzc29yX2dldF9pbmZvKCkgd2UnZCBlbmQgdXAKPiA+IHdpdGggYSBzaW1pbGFyIGNoZWNrIG9u
IHdoZXRoZXIgaXQgd2FzIGFscmVhZHkgcmVnaXN0ZXJlZCAodGhlIHg4NiBwYXRoKQo+ID4gb3Ig
aGFkIGJlIGRlZmVycmVkIChhcm02NCAvIGFjcGkpLgo+ID4gIAo+ID4gPgo+ID4gPiBJbiB0aGUg
ZW5kLCBpdCBzaG91bGQgYmUgcG9zc2libGUgdG8gYXZvaWQgY2hhbmdpbmcgdGhlIGJlaGF2aW9y
IG9mCj4gPiA+IHg4NiBhbmQgbG9vbmdhcmNoIGluIHRoaXMgc2VyaWVzLiAgCj4gPgo+ID4gUG9z
c2libGUsIHllcywgYnV0IHJlc3VsdCBpZiBJIHVuZGVyc3RhbmQgY29ycmVjdGx5IGlzIHdlIGVu
ZCB1cCB3aXRoCj4gPiB2ZXJ5IGRpZmZlcmVudCBmbG93cyBhbmQgcmVwbGljYXRpb24gb2YgZnVu
Y3Rpb25hbGl0eSBiZXR3ZWVuIHRoZQo+ID4gZWFybHkgcmVnaXN0cmF0aW9uIGFuZCB0aGUgbGF0
ZSBvbmUuIEknbSBmaW5lIHdpdGggdGhhdCBpZiB5b3UgcHJlZmVyIGl0ISAgCj4gCj4gQnV0IHRo
YXQncyB3aGF0IGlzIHRoZXJlIHRvZGF5LCBpc24ndCBpdD8KCkFncmVlZCAtIGJ1dCBJIHdhcyBw
cmV2aW91c2x5IHRoaW5raW5nIHdlIGNvdWxkIG1vdmUgZXZlcnl0aGluZyBsYXRlLgpJJ20gZmlu
ZSB3aXRoIGp1c3Qga2VlcGluZyB0aGUgdHdvIGZsb3dzIHNlcGFyYXRlLgoKPiAKPiBJIHRoaW5r
IHRoaXMgY2FuIGJlIGNoYW5nZWQgdG8gcmVkdWNlIHRoZSBkdXBsaWNhdGlvbiwgYnV0IEknZCBw
cmVmZXIKPiB0byBkbyB0aGF0IGxhdGVyLCB3aGVuIHRoZSByZXF1aXNpdGUgZnVuY3Rpb25hbGl0
eSBpcyBpbiBwbGFjZSBhbmQgd2UKPiBqdXN0IGRvIHRoZSBjb25zb2xpZGF0aW9uLiAgSW4gdGhh
dCBjYXNlLCBpZiBhbnl0aGluZyBnb2VzIHdyb25nLCB3ZQo+IGNhbiB0YWtlIGEgc3RlcCBiYWNr
IGFuZCByZWNvbnNpZGVyIHdpdGhvdXQgZGVmZXJyaW5nIHRoZSBhcm02NCBDUFUKPiBob3RwbHVn
IHN1cHBvcnQuCgpHcmVhdC4gVGhhdCBwbGFuIGNlcnRhaW5seSB3b3JrcyBmb3IgbWUgOikKClRo
YW5rcyBmb3IgcXVpY2sgcmVwbGllcyBhbmQgaGVscCBnZXR0aW5nIHRoaXMgaGVhZGVkIGluIHJp
Z2h0IGRpcmVjdGlvbi4KCitDQyBNaWd1ZWwgd2hvIGlzIGFsc28gbG9va2luZyBhdCBzb21lIG9m
IHRoaXMgc2VyaWVzLiBTb3JyeSBNaWd1ZWwsCndhcyBhc3N1bWluZyB5b3Ugd2VyZSBvbiB0aGUg
dGhyZWFkIGFuZCBuZXZlciBjaGVja2VkIDooCgpKb25hdGhhbgoKCgpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1yaXNjdiBtYWlsaW5nIGxpc3QK
bGludXgtcmlzY3ZAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9y
Zy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJpc2N2Cg==