Re: [PATCH V2 1/8] i3c: master: Fix recursive locking during device registration
[email protected] Tue, 28 Jul 2026 16:19:35 +0000
| Newsgroups | org.infradead.lists.linux-i3c,org.kernel.vger.linux-pci |
|---|---|
| Message-ID | <[email protected]> |
VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg MiBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6CgpOZXcgaXNzdWVzOgotIFtIaWdoXSBE cm9wcGluZyB0aGUgYnVzIG1haW50ZW5hbmNlIGxvY2sgYXJvdW5kIGRldmljZV9yZWdpc3Rlcigp IGV4cG9zZXMgaTNjX2RldmljZV91ZXZlbnQoKSBhbmQgZHJpdmVyIHByb2JlIGZ1bmN0aW9ucyB0 byBhIFVzZS1BZnRlci1GcmVlIGlmIGEgY29uY3VycmVudCBEQUEgcmVwbGFjZXMgdGhlIGRldmlj ZS4KClByZS1leGlzdGluZyBpc3N1ZXM6Ci0gW0hpZ2hdIGkzY19kZXZpY2VfdWV2ZW50KCkgbGVh a3MgdW5pbml0aWFsaXplZCBzdGFjayBtZW1vcnkgdG8gdXNlcnNwYWNlIHdoZW4gaTNjZGV2LT5k ZXNjIGlzIE5VTEwuCi0tCgotLS0gUGF0Y2ggWzFdOiBbUEFUQ0ggVjIgMS84XSBpM2M6IG1hc3Rl cjogRml4IHJlY3Vyc2l2ZSBsb2NraW5nIGR1cmluZyBkZXZpY2UgcmVnaXN0cmF0aW9uIC0tLQpj b21taXQgMzNhNGRjZDZjNTYyNmZhZWY5NWJjN2NkMDJlYzRjNTZjNjcxMGM3OApBdXRob3I6IEFk cmlhbiBIdW50ZXIgPGFkcmlhbi5odW50ZXJAaW50ZWwuY29tPgoKaTNjOiBtYXN0ZXI6IEZpeCBy ZWN1cnNpdmUgbG9ja2luZyBkdXJpbmcgZGV2aWNlIHJlZ2lzdHJhdGlvbgoKVGhpcyBjb21taXQg c2VwYXJhdGVzIGRldmljZSBjcmVhdGlvbiBmcm9tIHJlZ2lzdHJhdGlvbiB0byBmaXggYSByZWN1 cnNpdmUKbG9ja2luZyBpc3N1ZS4gSXQgZHJvcHMgdGhlIGJ1cyBtYWludGVuYW5jZSBsb2NrIGFy b3VuZCBkZXZpY2VfcmVnaXN0ZXIoKQp0byBwcmV2ZW50IGRlYWRsb2NrcyB3aGVuIHByb2JlIGNh bGxiYWNrcyBpbnZva2UgSTNDIGhlbHBlcnMuCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9pM2MvbWFz dGVyLmMgYi9kcml2ZXJzL2kzYy9tYXN0ZXIuYwppbmRleCBmZDNlNzlkMTBjODQwLi44NzRmNmUx MWIyOTZkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2kzYy9tYXN0ZXIuYworKysgYi9kcml2ZXJzL2kz Yy9tYXN0ZXIuYwpbIC4uLiBdCj4gQEAgLTE5OTksMjUgKzIwMDgsMzcgQEAgaTNjX21hc3Rlcl9y ZWdpc3Rlcl9uZXdfaTNjX2RldnMoc3RydWN0IGkzY19tYXN0ZXJfY29udHJvbGxlciAqbWFzdGVy KQo+ICAJCWlmIChkZXNjLT5ib2FyZGluZm8pCj4gIAkJCWRlc2MtPmRldi0+ZGV2Lm9mX25vZGUg PSBkZXNjLT5ib2FyZGluZm8tPm9mX25vZGU7Cj4gIAo+IC0JCXJldCA9IGRldmljZV9yZWdpc3Rl cigmZGVzYy0+ZGV2LT5kZXYpOwo+IC0JCWlmIChyZXQpIHsKPiAtCQkJZGV2X2VycigmbWFzdGVy LT5kZXYsCj4gLQkJCQkiRmFpbGVkIHRvIGFkZCBJM0MgZGV2aWNlIChlcnIgPSAlZClcbiIsIHJl dCk7Cj4gLQkJCWRlc2MtPmRldi0+ZGVzYyA9IE5VTEw7Cj4gLQkJCXB1dF9kZXZpY2UoJmRlc2Mt PmRldi0+ZGV2KTsKPiAtCQkJZGVzYy0+ZGV2ID0gTlVMTDsKPiAtCQl9Cj4gKwkJbGlzdF9hZGRf dGFpbCgmZGVzYy0+ZGV2LT5ub2RlLCAmaTNjX3VucmVnX2RldnMpOwo+ICsJfQo+ICsKPiArCWkz Y19idXNfbWFpbnRlbmFuY2VfdW5sb2NrKCZtYXN0ZXItPmJ1cyk7Cj4gKwo+ICsJbGlzdF9mb3Jf ZWFjaF9lbnRyeV9zYWZlKGkzY2RldiwgdG1wLCAmaTNjX3VucmVnX2RldnMsIG5vZGUpIHsKPiAr CQlyZXQgPSBkZXZpY2VfcmVnaXN0ZXIoJmkzY2Rldi0+ZGV2KTsKCltTZXZlcml0eTogSGlnaF0K RG9lcyBkcm9wcGluZyB0aGUgbWFpbnRlbmFuY2UgbG9jayBhcm91bmQgZGV2aWNlX3JlZ2lzdGVy KCkgZXhwb3NlCmkzY19kZXZpY2VfdWV2ZW50KCkgYW5kIGRyaXZlciBwcm9iZXMgdG8gYSB1c2Ut YWZ0ZXItZnJlZT8KCklmIGEgY29uY3VycmVudCBJM0MgaG90LWpvaW4gZXZlbnQgb3IgYSBzeXNm cyB3cml0ZSB0byBkb19kYWEgb2NjdXJzIHdoaWxlCmRldmljZV9yZWdpc3RlcigpIGlzIHJ1bm5p bmcgd2l0aG91dCB0aGUgbG9jaywKX19pM2NfbWFzdGVyX2FkZF9pM2NfZGV2X2xvY2tlZCgpIGNv dWxkIGZpbmQgYSBkdXBsaWNhdGUgUElEOgoKX19pM2NfbWFzdGVyX2FkZF9pM2NfZGV2X2xvY2tl ZCgpIHsKICAgICAgICBvbGRkZXYgPSBpM2NfbWFzdGVyX3NlYXJjaF9pM2NfZGV2X2R1cGxpY2F0 ZShuZXdkZXYpOwogICAgICAgIGlmIChvbGRkZXYpIHsKICAgICAgICAgICAgICAgIG5ld2Rldi0+ ZGV2ID0gb2xkZGV2LT5kZXY7CiAgICAgICAgICAgICAgICBpZiAobmV3ZGV2LT5kZXYpCiAgICAg ICAgICAgICAgICAgICAgICAgIG5ld2Rldi0+ZGV2LT5kZXNjID0gbmV3ZGV2OwogICAgICAgICAg ICAgICAgLi4uCiAgICAgICAgICAgICAgICBpM2NfbWFzdGVyX2RldGFjaF9pM2NfZGV2KG9sZGRl dik7CiAgICAgICAgICAgICAgICBpM2NfbWFzdGVyX2ZyZWVfaTNjX2RldihvbGRkZXYpOwogICAg ICAgIH0KfQoKTWVhbndoaWxlLCBkZXZpY2VfcmVnaXN0ZXIoKSB0cmlnZ2VycyBhIEtPQkpfQURE IHVldmVudC4gaTNjX2RldmljZV91ZXZlbnQoKQpyZWFkcyBpM2NkZXYtPmRlc2MgbG9ja2xlc3Ns eToKCmkzY19kZXZpY2VfdWV2ZW50KCkgewogICAgICAgIGlmIChpM2NkZXYtPmRlc2MpCiAgICAg ICAgICAgICAgICBkZXZpbmZvID0gaTNjZGV2LT5kZXNjLT5pbmZvOwp9CgpDb3VsZCB0aGlzIGxl YWQgdG8gaTNjX2RldmljZV91ZXZlbnQoKSBvciBkcml2ZXIgcHJvYmUgZnVuY3Rpb25zIGRlcmVm ZXJlbmNpbmcKdGhlIG9sZCBkZXNjcmlwdG9yIHdoaWxlIGl0IGlzIGJlaW5nIGZyZWVkPwoKPiAr CQlpZiAocmV0KQo+ICsJCQlkZXZfZXJyKCZtYXN0ZXItPmRldiwgIkZhaWxlZCB0byBhZGQgSTND IGRldmljZSAoZXJyID0gJWQpXG4iLCByZXQpOwo+ICsJCWVsc2UKPiArCQkJbGlzdF9kZWxfaW5p dCgmaTNjZGV2LT5ub2RlKTsKPiArCX0KPiArCj4gKwlpM2NfYnVzX21haW50ZW5hbmNlX2xvY2so Jm1hc3Rlci0+YnVzKTsKPiArCj4gKwlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUoaTNjZGV2LCB0 bXAsICZpM2NfdW5yZWdfZGV2cywgbm9kZSkgewo+ICsJCWxpc3RfZGVsKCZpM2NkZXYtPm5vZGUp Owo+ICsJCWRlc2MgPSBpM2NkZXYtPmRlc2M7Cj4gKwkJaTNjZGV2LT5kZXNjID0gTlVMTDsKCltT ZXZlcml0eTogSGlnaF0KVGhpcyBpcyBhIHByZS1leGlzdGluZyBpc3N1ZSwgYnV0IGRvZXMgc2V0 dGluZyBpM2NkZXYtPmRlc2MgdG8gTlVMTCBiZWZvcmUKdW5yZWdpc3RyYXRpb24gb3IgY2xlYW51 cCBsZWFkIHRvIGxlYWtpbmcgdW5pbml0aWFsaXplZCBzdGFjayBtZW1vcnkgaW4KaTNjX2Rldmlj ZV91ZXZlbnQoKT8KCldoZW4gYSBkZXZpY2UgaXMgdW5yZWdpc3RlcmVkIChvciBpZiByZWdpc3Ry YXRpb24gZmFpbHMgYW5kIHRyaWdnZXJzIGEgdWV2ZW50KSwKaTNjZGV2LT5kZXNjIGlzIHNldCB0 byBOVUxMLiBUaGlzIGJ5cGFzc2VzIHRoZSBpbml0aWFsaXphdGlvbiBvZiBkZXZpbmZvCmluIGkz Y19kZXZpY2VfdWV2ZW50KCk6CgppM2NfZGV2aWNlX3VldmVudCgpIHsKICAgICAgICBzdHJ1Y3Qg aTNjX2RldmljZV9pbmZvIGRldmluZm87CiAgICAgICAgdTE2IG1hbnVmLCBwYXJ0LCBleHQ7Cgog ICAgICAgIGlmIChpM2NkZXYtPmRlc2MpCiAgICAgICAgICAgICAgICBkZXZpbmZvID0gaTNjZGV2 LT5kZXNjLT5pbmZvOwoKICAgICAgICBtYW51ZiA9IEkzQ19QSURfTUFOVUZfSUQoZGV2aW5mby5w aWQpOwogICAgICAgIC4uLgogICAgICAgIHJldHVybiBhZGRfdWV2ZW50X3ZhcihlbnYsICJNT0RB TElBUz1pM2M6ZGNyJTAyWG1hbnVmJTA0WCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGRldmluZm8uZGNyLCBtYW51Zik7Cn0KClNpbmNlIGRldmluZm8gaXMgdW5pbml0aWFsaXplZCBv biB0aGUgc3RhY2sgd2hlbiBkZXNjIGlzIE5VTEwsIGNvdWxkIHRoaXMKYnJvYWRjYXN0IHVuaW5p dGlhbGl6ZWQga2VybmVsIHN0YWNrIGRhdGEgdG8gdXNlcnNwYWNlIHByb2Nlc3NlcyBsaXN0ZW5p bmcKdG8gbmV0bGluayB1ZXZlbnRzPwoKPiArCQlwdXRfZGV2aWNlKCZpM2NkZXYtPmRldik7Cj4g KwkJZGVzYy0+ZGV2ID0gTlVMTDsKPiAgCX0KPiArCj4gKwlpM2NfYnVzX21haW50ZW5hbmNlX3Vu bG9jaygmbWFzdGVyLT5idXMpOwo+ICB9CgotLSAKU2FzaGlrbyBBSSByZXZpZXcgwrcgaHR0cHM6 Ly9zYXNoaWtvLmRldi8jL3BhdGNoc2V0LzIwMjYwNzI4MTU1MzA4LjE0MjcxMy0xLWFkcmlhbi5o dW50ZXJAaW50ZWwuY29tP3BhcnQ9MQoKLS0gCmxpbnV4LWkzYyBtYWlsaW5nIGxpc3QKbGludXgt aTNjQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1h bi9saXN0aW5mby9saW51eC1pM2MK