From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v2,3/6] EDAC/amd64: Use a macro for iterating over Unified Memory Controllers From: Yazen Ghannam Message-Id: <20190226172532.12924-3-Yazen.Ghannam@amd.com> Date: Tue, 26 Feb 2019 17:25:46 +0000 To: "linux-edac@vger.kernel.org" Cc: "Ghannam, Yazen" , "linux-kernel@vger.kernel.org" , "bp@alien8.de" List-ID: RnJvbTogWWF6ZW4gR2hhbm5hbSA8eWF6ZW4uZ2hhbm5hbUBhbWQuY29tPgoKRGVmaW5lIGFuZCB1 c2UgYSBtYWNybyBmb3IgbG9vcGluZyBvdmVyIHRoZSBudW1iZXIgb2YgVW5pZmllZCBNZW1vcnkK Q29udHJvbGxlcnMuCgpObyBmdW5jdGlvbmFsIGNoYW5nZS4KClNpZ25lZC1vZmYtYnk6IFlhemVu IEdoYW5uYW0gPHlhemVuLmdoYW5uYW1AYW1kLmNvbT4KLS0tCkxpbms6Cmh0dHBzOi8vbGttbC5r ZXJuZWwub3JnL3IvMjAxOTAyMTkyMDI1MzYuMTU0NjItMi1ZYXplbi5HaGFubmFtQGFtZC5jb20K CnYxLT52MjoKKiBOZXcgaW4gVjIuIFBsZWFzZSBzZWUgY29tbWVudCBvbiBQYXRjaCAyIFYxIGF0 IGxpbmsgYWJvdmUuCgogZHJpdmVycy9lZGFjL2FtZDY0X2VkYWMuYyB8IDE3ICsrKysrKysrKyst LS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9kcml2ZXJzL2VkYWMvYW1kNjRfZWRhYy5jIGIvZHJpdmVycy9lZGFjL2Ft ZDY0X2VkYWMuYwppbmRleCAwMDM4ZmNiMGIwMTAuLmM4MmFhZmI3MjQ2YSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9lZGFjL2FtZDY0X2VkYWMuYworKysgYi9kcml2ZXJzL2VkYWMvYW1kNjRfZWRhYy5j CkBAIC00NDksNiArNDQ5LDkgQEAgc3RhdGljIHZvaWQgZ2V0X2NzX2Jhc2VfYW5kX21hc2soc3Ry dWN0IGFtZDY0X3B2dCAqcHZ0LCBpbnQgY3Nyb3csIHU4IGRjdCwKICNkZWZpbmUgZm9yX2VhY2hf Y2hpcF9zZWxlY3RfbWFzayhpLCBkY3QsIHB2dCkgXAogCWZvciAoaSA9IDA7IGkgPCBwdnQtPmNz ZWxzW2RjdF0ubV9jbnQ7IGkrKykKIAorI2RlZmluZSBmb3JfZWFjaF91bWMoaSkgXAorCWZvciAo aSA9IDA7IGkgPCBudW1fdW1jczsgaSsrKQorCiAvKgogICogQGlucHV0X2FkZHIgaXMgYW4gSW5w dXRBZGRyIGFzc29jaWF0ZWQgd2l0aCB0aGUgbm9kZSBnaXZlbiBieSBtY2kuIFJldHVybiB0aGUK ICAqIGNzcm93IHRoYXQgaW5wdXRfYWRkciBtYXBzIHRvLCBvciAtMSBvbiBmYWlsdXJlIChubyBj c3JvdyBjbGFpbXMgaW5wdXRfYWRkcikuCkBAIC03MjIsNyArNzI1LDcgQEAgc3RhdGljIHVuc2ln bmVkIGxvbmcgZGV0ZXJtaW5lX2VkYWNfY2FwKHN0cnVjdCBhbWQ2NF9wdnQgKnB2dCkKIAlpZiAo cHZ0LT51bWMpIHsKIAkJdTggaSwgdW1jX2VuX21hc2sgPSAwLCBkaW1tX2VjY19lbl9tYXNrID0g MDsKIAotCQlmb3IgKGkgPSAwOyBpIDwgbnVtX3VtY3M7IGkrKykgeworCQlmb3JfZWFjaF91bWMo aSkgewogCQkJaWYgKCEocHZ0LT51bWNbaV0uc2RwX2N0cmwgJiBVTUNfU0RQX0lOSVQpKQogCQkJ CWNvbnRpbnVlOwogCkBAIC04MTEsNyArODE0LDcgQEAgc3RhdGljIHZvaWQgX19kdW1wX21pc2Nf cmVnc19kZihzdHJ1Y3QgYW1kNjRfcHZ0ICpwdnQpCiAJc3RydWN0IGFtZDY0X3VtYyAqdW1jOwog CXUzMiBpLCB0bXAsIHVtY19iYXNlOwogCi0JZm9yIChpID0gMDsgaSA8IG51bV91bWNzOyBpKysp IHsKKwlmb3JfZWFjaF91bWMoaSkgewogCQl1bWNfYmFzZSA9IGdldF91bWNfYmFzZShpKTsKIAkJ dW1jID0gJnB2dC0+dW1jW2ldOwogCkBAIC0xMzg4LDcgKzEzOTEsNyBAQCBzdGF0aWMgaW50IGYx N19lYXJseV9jaGFubmVsX2NvdW50KHN0cnVjdCBhbWQ2NF9wdnQgKnB2dCkKIAlpbnQgaSwgY2hh bm5lbHMgPSAwOwogCiAJLyogU0RQIENvbnRyb2wgYml0IDMxIChTZHBJbml0KSBpcyBjbGVhciBm b3IgdW51c2VkIFVNQyBjaGFubmVscyAqLwotCWZvciAoaSA9IDA7IGkgPCBudW1fdW1jczsgaSsr KQorCWZvcl9lYWNoX3VtYyhpKQogCQljaGFubmVscyArPSAhIShwdnQtPnVtY1tpXS5zZHBfY3Ry bCAmIFVNQ19TRFBfSU5JVCk7CiAKIAlhbWQ2NF9pbmZvKCJNQ1QgY2hhbm5lbCBjb3VudDogJWRc biIsIGNoYW5uZWxzKTsKQEAgLTI2MDQsNyArMjYwNyw3IEBAIHN0YXRpYyB2b2lkIGRldGVybWlu ZV9lY2Nfc3ltX3N6KHN0cnVjdCBhbWQ2NF9wdnQgKnB2dCkKIAlpZiAocHZ0LT51bWMpIHsKIAkJ dTggaTsKIAotCQlmb3IgKGkgPSAwOyBpIDwgbnVtX3VtY3M7IGkrKykgeworCQlmb3JfZWFjaF91 bWMoaSkgewogCQkJLyogQ2hlY2sgZW5hYmxlZCBjaGFubmVscyBvbmx5OiAqLwogCQkJaWYgKChw dnQtPnVtY1tpXS5zZHBfY3RybCAmIFVNQ19TRFBfSU5JVCkgJiYKIAkJCSAgICAocHZ0LT51bWNb aV0uZWNjX2N0cmwgJiBCSVQoNykpKSB7CkBAIC0yNjQwLDcgKzI2NDMsNyBAQCBzdGF0aWMgdm9p ZCBfX3JlYWRfbWNfcmVnc19kZihzdHJ1Y3QgYW1kNjRfcHZ0ICpwdnQpCiAJdTMyIGksIHVtY19i YXNlOwogCiAJLyogUmVhZCByZWdpc3RlcnMgZnJvbSBlYWNoIFVNQyAqLwotCWZvciAoaSA9IDA7 IGkgPCBudW1fdW1jczsgaSsrKSB7CisJZm9yX2VhY2hfdW1jKGkpIHsKIAogCQl1bWNfYmFzZSA9 IGdldF91bWNfYmFzZShpKTsKIAkJdW1jID0gJnB2dC0+dW1jW2ldOwpAQCAtMzA1Myw3ICszMDU2 LDcgQEAgc3RhdGljIGJvb2wgZWNjX2VuYWJsZWQoc3RydWN0IHBjaV9kZXYgKkYzLCB1MTYgbmlk KQogCWlmIChib290X2NwdV9kYXRhLng4NiA+PSAweDE3KSB7CiAJCXU4IHVtY19lbl9tYXNrID0g MCwgZWNjX2VuX21hc2sgPSAwOwogCi0JCWZvciAoaSA9IDA7IGkgPCBudW1fdW1jczsgaSsrKSB7 CisJCWZvcl9lYWNoX3VtYyhpKSB7CiAJCQl1MzIgYmFzZSA9IGdldF91bWNfYmFzZShpKTsKIAog CQkJLyogT25seSBjaGVjayBlbmFibGVkIFVNQ3MuICovCkBAIC0zMTA2LDcgKzMxMDksNyBAQCBm MTdoX2RldGVybWluZV9lZGFjX2N0bF9jYXAoc3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpLCBzdHJ1 Y3QgYW1kNjRfcHZ0ICpwdnQpCiB7CiAJdTggaSwgZWNjX2VuID0gMSwgY3BrX2VuID0gMTsKIAot CWZvciAoaSA9IDA7IGkgPCBudW1fdW1jczsgaSsrKSB7CisJZm9yX2VhY2hfdW1jKGkpIHsKIAkJ aWYgKHB2dC0+dW1jW2ldLnNkcF9jdHJsICYgVU1DX1NEUF9JTklUKSB7CiAJCQllY2NfZW4gJj0g ISEocHZ0LT51bWNbaV0udW1jX2NhcF9oaSAmIFVNQ19FQ0NfRU5BQkxFRCk7CiAJCQljcGtfZW4g Jj0gISEocHZ0LT51bWNbaV0udW1jX2NhcF9oaSAmIFVNQ19FQ0NfQ0hJUEtJTExfQ0FQKTsK