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,1/1] EDAC, sb_edac: Classify memory mirroring modes. From: Qiuxu Zhuo Message-Id: <20170730180651.30060-1-qiuxu.zhuo@intel.com> Date: Mon, 31 Jul 2017 02:06:51 +0800 To: bp@alien8.de, mchehab@osg.samsung.com Cc: tony.luck@intel.com, arozansk@redhat.com, patrickg@supermicro.com, linux-edac@vger.kernel.org, Qiuxu Zhuo List-ID: QmFzaWNhbGx5IHRoZXJlIGFyZSBmdWxsIG1lbW9yeSBtaXJyb3JpbmcgYW5kIGFkZHJlc3MgcmFu Z2UgcGFydGlhbAptZW1vcnkgbWlycm9yaW5nKHN1cHBvcnRlZCBieSBIYXN3ZWxsIEVYIGFuZCBC cm9hZHdlbGwgRVgpIG1vZGVzLgoKYSkgSW4gZnVsbCBtZW1vcnkgbWlycm9yaW5nLCB0aGUgbWVt b3J5IGJlaGluZCBlYWNoIG1lbW9yeSBjb250cm9sbGVyCiAgIGlzIG1pcnJvcmVkLCB0aGUgbWVt b3J5IGlzIHNwbGl0IGludG8gdHdvIGlkZW50aWNhbCBtaXJyb3JzIChwcmltYXJ5CiAgIGFuZCBz ZWNvbmRhcnkpLCBoYWxmIG9mIHRoZSBtZW1vcnkgaXMgcmVzZXJ2ZWQgZm9yIHJlZHVuZGFuY3ku CgpiKSBJbiBhZGRyZXNzIHJhbmdlIHBhcnRpYWwgbWVtb3J5IG1pcnJvcmluZywgdGhlIG1lbW9y eSBzaXplKHJhbmdlKQogICBvZiBwcmltYXJ5IGFuZCBzZWNvbmRhcnkgYmVoaW5kIGVhY2ggbWVt b3J5IGNvbnRyb2xsZXIgY2FuIGJlIHVzZXIKICAgZGVmaW5lZCBieSB0aGUgVEFEMCByZWdpc3Rl ci4gVGhlIHJlc3QgbWVtb3J5IHJhbmdlcyBkZWZpbmVkIGJ5CiAgIFRBRDEvVEFEMi8uLi4gaW4g dGhhdCBtZW1vcnkgY29udHJvbGxlciBhcmUgbm9uLW1pcnJvcmVkLgoKRm9yIG1vcmUgZGV0YWls IG1pcnJvcmluZywgc2VlIHRoZSBmb2xsb3dpbmcgbGluayB3cml0dGVuIGJ5IFRvbnkgTHVjazoK aHR0cHM6Ly8wMS5vcmcvbGtwL2Jsb2dzL3RvbnlsdWNrLzIwMTYvYWRkcmVzcy1yYW5nZS1wYXJ0 aWFsLW1lbW9yeS1taXJyb3JpbmctbGludXgKCkN1cnJlbnRseSB0aGUgc2JfZWRhYyBkcml2ZXIg b25seSBzdXBwb3J0cyBhZGRyZXNzIGRlY29kaW5nIGluIGZ1bGwKbWVtb3J5IG1pcnJvcmluZyBh bmQgbm9uLW1pcnJvcmluZyBtb2Rlcy4gSW4gYWRkcmVzcyByYW5nZSBwYXJ0aWFsIG1lbW9yeQpt aXJyb3JpbmcgbW9kZSwgaXQgbWF5IGZhaWwgdG8gZGVjb2RlIGFkZHJlc3MgdGhhdCBmYWxscyBp biBub24tbWlycm9yaW5nCmFyZWEgKHRoZSBmb2xsb3dpbmcgd2FzIG9uZSBvZiB0aGlzIGtpbmQg ZmFpbGVkIGxvZ3MpLgogIC0tLQogIG1jZTogVW5jb3JyZWN0ZWQgaGFyZHdhcmUgbWVtb3J5IGVy cm9yIGluIHVzZXItYWNjZXNzIGF0IDU2NmQ1M2E0MDAKICBNZW1vcnkgZmFpbHVyZTogMHg1NjZk NTNhOiBLaWxsaW5nIGVpbmpfbWVtX3VjOjQ2NDcgZHVlIHRvIGhhcmR3YXJlIG1lbW9yeSBjb3Jy dXB0aW9uCiAgTWVtb3J5IGZhaWx1cmU6IDB4NTY2ZDUzYTogcmVjb3ZlcnkgYWN0aW9uIGZvciBk aXJ0eSBMUlUgcGFnZTogUmVjb3ZlcmVkCiAgbWNlOiBbSGFyZHdhcmUgRXJyb3JdOiBNYWNoaW5l IGNoZWNrIGV2ZW50cyBsb2dnZWQKICBFREFDIHNicmlkZ2UgTUMxOiBIQU5ETElORyBNQ0UgTUVN T1JZIEVSUk9SCiAgRURBQyBzYnJpZGdlIE1DMTogQ1BVIDQ4OiBNYWNoaW5lIENoZWNrIEV2ZW50 OiAwIEJhbmsgNzogZWMwMDAwMDAwMDAxMDA5MAogIEVEQUMgc2JyaWRnZSBNQzE6IFRTQyA0Yjkx NGFhNWE5OWRhYgogIEVEQUMgc2JyaWRnZSBNQzE6IEFERFIgNTY2ZDUzYTQwMAogIEVEQUMgc2Jy aWRnZSBNQzE6IE1JU0MgMTQ0M2EwYzg2CiAgRURBQyBzYnJpZGdlIE1DMTogUFJPQ0VTU09SIDA6 NDA2ZjEgVElNRSAxNDk5NzEyNzY0IFNPQ0tFVCAyIEFQSUMgODAKICBFREFDIE1DMTogMCBVRSBD YW4ndCBkaXNjb3ZlciB0aGUgbWVtb3J5IHJhbmsgZm9yIGNoIGFkZHIgMHg3ZmI1NGU5MDAgb24g YW55IG1lbW9yeSAoIHBhZ2U6MHgwIG9mZnNldDoweDAgZ3JhaW46MzIpCiAgbWNlOiBbSGFyZHdh cmUgRXJyb3JdOiBNYWNoaW5lIGNoZWNrIGV2ZW50cyBsb2dnZWQKICAtLS0KClRoaXMgcGF0Y2gg Y2xhc3NpZmllcyBtZW1vcnkgbWlycm9yaW5nIG1vZGVzLCBhbmQgbWFrZXMgdGhlIGFkZHJlc3Mg ZGVjb2RpbmcKaW4gYWRkcmVzcyByYW5nZSBwYXJ0aWFsIG1lbW9yeSBtb2RlIGNvcnJlY3QuCgpT aWduZWQtb2ZmLWJ5OiBRaXV4dSBaaHVvIDxxaXV4dS56aHVvQGludGVsLmNvbT4KLS0tCnYxLT52 NSBjaGFuZ2Vsb2c6CiAtIHMvbWlycm9yaW5nX21kL21pcnJvcl9tb2RlL2cKIC0gUmV0dXJuIC1F Tk9ERVYsIGlmIGZhaWwgdG8gcmVhZCByZWdpc3RlciBNQ01UUi9IQVNXRUxMX0hBU1lTREVGRUFU VVJFMi9SQVNFTkFCTEVTL0tOTF9NQ01UUgoKIGRyaXZlcnMvZWRhYy9zYl9lZGFjLmMgfCA2MyAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQogMSBmaWxl IGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZWRhYy9zYl9lZGFjLmMgYi9kcml2ZXJzL2VkYWMvc2JfZWRhYy5jCmluZGV4IDgw ZDg2MGMuLmJkZjZmYzYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZWRhYy9zYl9lZGFjLmMKKysrIGIv ZHJpdmVycy9lZGFjL3NiX2VkYWMuYwpAQCAtMzAwLDYgKzMwMCwxMiBAQCBlbnVtIGRvbWFpbiB7 CiAJU09DSywKIH07CiAKK2VudW0gbWlycm9yaW5nX21vZGUgeworCU5PTl9NSVJST1JJTkcsCisJ QUREUl9SQU5HRV9NSVJST1JJTkcsCisJRlVMTF9NSVJST1JJTkcsCit9OworCiBzdHJ1Y3Qgc2Jy aWRnZV9wdnQ7CiBzdHJ1Y3Qgc2JyaWRnZV9pbmZvIHsKIAllbnVtIHR5cGUJdHlwZTsKQEAgLTM3 Nyw4ICszODMsOSBAQCBzdHJ1Y3Qgc2JyaWRnZV9wdnQgewogCXN0cnVjdCBzYnJpZGdlX2NoYW5u ZWwJY2hhbm5lbFtOVU1fQ0hBTk5FTFNdOwogCiAJLyogTWVtb3J5IHR5cGUgZGV0ZWN0aW9uICov Ci0JYm9vbAkJCWlzX21pcnJvcmVkLCBpc19sb2Nrc3RlcCwgaXNfY2xvc2VfcGc7CisJYm9vbAkJ CWlzX2N1cl9hZGRyX21pcnJvcmVkLCBpc19sb2Nrc3RlcCwgaXNfY2xvc2VfcGc7CiAJYm9vbAkJ CWlzX2NoYW5faGFzaDsKKwllbnVtIG1pcnJvcmluZ19tb2RlCW1pcnJvcl9tb2RlOwogCiAJLyog TWVtb3J5IGRlc2NyaXB0aW9uICovCiAJdTY0CQkJdG9sbSwgdG9obTsKQEAgLTE2NDgsMTAgKzE2 NTUsNiBAQCBzdGF0aWMgaW50IGdldF9kaW1tX2NvbmZpZyhzdHJ1Y3QgbWVtX2N0bF9pbmZvICpt Y2kpCiAJZW51bSBlZGFjX3R5cGUgbW9kZTsKIAl1MzIgcmVnOwogCi0JaWYgKHB2dC0+aW5mby50 eXBlID09IEhBU1dFTEwgfHwgcHZ0LT5pbmZvLnR5cGUgPT0gQlJPQURXRUxMKSB7Ci0JCXBjaV9y ZWFkX2NvbmZpZ19kd29yZChwdnQtPnBjaV9oYSwgSEFTV0VMTF9IQVNZU0RFRkVBVFVSRTIsICZy ZWcpOwotCQlwdnQtPmlzX2NoYW5faGFzaCA9IEdFVF9CSVRGSUVMRChyZWcsIDIxLCAyMSk7Ci0J fQogCXB2dC0+c2JyaWRnZV9kZXYtPm5vZGVfaWQgPSBwdnQtPmluZm8uZ2V0X25vZGVfaWQocHZ0 KTsKIAllZGFjX2RiZygwLCAibWMjJWQ6IE5vZGUgSUQ6ICVkLCBzb3VyY2UgSUQ6ICVkXG4iLAog CQkgcHZ0LT5zYnJpZGdlX2Rldi0+bWMsCkBAIC0xNjYzLDIyICsxNjY2LDQ1IEBAIHN0YXRpYyBp bnQgZ2V0X2RpbW1fY29uZmlnKHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSkKIAkgKi8KIAlpZiAo cHZ0LT5pbmZvLnR5cGUgPT0gS05JR0hUU19MQU5ESU5HKSB7CiAJCW1vZGUgPSBFREFDX1M0RUNE NEVEOwotCQlwdnQtPmlzX21pcnJvcmVkID0gZmFsc2U7CisJCXB2dC0+bWlycm9yX21vZGUgPSBO T05fTUlSUk9SSU5HOworCQlwdnQtPmlzX2N1cl9hZGRyX21pcnJvcmVkID0gZmFsc2U7CiAKIAkJ aWYgKGtubF9nZXRfZGltbV9jYXBhY2l0eShwdnQsIGtubF9tY19zaXplcykgIT0gMCkKIAkJCXJl dHVybiAtMTsKLQkJcGNpX3JlYWRfY29uZmlnX2R3b3JkKHB2dC0+cGNpX3RhLCBLTkxfTUNNVFIs ICZwdnQtPmluZm8ubWNtdHIpOworCQlpZiAocGNpX3JlYWRfY29uZmlnX2R3b3JkKHB2dC0+cGNp X3RhLCBLTkxfTUNNVFIsICZwdnQtPmluZm8ubWNtdHIpKSB7CisJCQllZGFjX2RiZygwLCAiRmFp bGVkIHRvIHJlYWQgS05MX01DTVRSIHJlZ2lzdGVyXG4iKTsKKwkJCXJldHVybiAtRU5PREVWOwor CQl9CiAJfSBlbHNlIHsKLQkJcGNpX3JlYWRfY29uZmlnX2R3b3JkKHB2dC0+cGNpX3JhcywgUkFT RU5BQkxFUywgJnJlZyk7CisJCWlmIChwdnQtPmluZm8udHlwZSA9PSBIQVNXRUxMIHx8IHB2dC0+ aW5mby50eXBlID09IEJST0FEV0VMTCkgeworCQkJaWYgKHBjaV9yZWFkX2NvbmZpZ19kd29yZChw dnQtPnBjaV9oYSwgSEFTV0VMTF9IQVNZU0RFRkVBVFVSRTIsICZyZWcpKSB7CisJCQkJZWRhY19k YmcoMCwgIkZhaWxlZCB0byByZWFkIEhBU1dFTExfSEFTWVNERUZFQVRVUkUyIHJlZ2lzdGVyXG4i KTsKKwkJCQlyZXR1cm4gLUVOT0RFVjsKKwkJCX0KKwkJCXB2dC0+aXNfY2hhbl9oYXNoID0gR0VU X0JJVEZJRUxEKHJlZywgMjEsIDIxKTsKKwkJCWlmIChHRVRfQklURklFTEQocmVnLCAyOCwgMjgp KSB7CisJCQkJcHZ0LT5taXJyb3JfbW9kZSA9IEFERFJfUkFOR0VfTUlSUk9SSU5HOworCQkJCWVk YWNfZGJnKDAsICJBZGRyZXNzIHJhbmdlIHBhcnRpYWwgbWVtb3J5IG1pcnJvcmluZyBpcyBlbmFi bGVkXG4iKTsKKwkJCQlnb3RvIG5leHQ7CisJCQl9CisJCX0KKwkJaWYgKHBjaV9yZWFkX2NvbmZp Z19kd29yZChwdnQtPnBjaV9yYXMsIFJBU0VOQUJMRVMsICZyZWcpKSB7CisJCQllZGFjX2RiZygw LCAiRmFpbGVkIHRvIHJlYWQgUkFTRU5BQkxFUyByZWdpc3RlclxuIik7CisJCQlyZXR1cm4gLUVO T0RFVjsKKwkJfQogCQlpZiAoSVNfTUlSUk9SX0VOQUJMRUQocmVnKSkgewotCQkJZWRhY19kYmco MCwgIk1lbW9yeSBtaXJyb3IgaXMgZW5hYmxlZFxuIik7Ci0JCQlwdnQtPmlzX21pcnJvcmVkID0g dHJ1ZTsKKwkJCXB2dC0+bWlycm9yX21vZGUgPSBGVUxMX01JUlJPUklORzsKKwkJCWVkYWNfZGJn KDAsICJGdWxsIG1lbW9yeSBtaXJyb3JpbmcgaXMgZW5hYmxlZFxuIik7CiAJCX0gZWxzZSB7Ci0J CQllZGFjX2RiZygwLCAiTWVtb3J5IG1pcnJvciBpcyBkaXNhYmxlZFxuIik7Ci0JCQlwdnQtPmlz X21pcnJvcmVkID0gZmFsc2U7CisJCQlwdnQtPm1pcnJvcl9tb2RlID0gTk9OX01JUlJPUklORzsK KwkJCWVkYWNfZGJnKDAsICJNZW1vcnkgbWlycm9yaW5nIGlzIGRpc2FibGVkXG4iKTsKIAkJfQog Ci0JCXBjaV9yZWFkX2NvbmZpZ19kd29yZChwdnQtPnBjaV90YSwgTUNNVFIsICZwdnQtPmluZm8u bWNtdHIpOworbmV4dDoKKwkJaWYgKHBjaV9yZWFkX2NvbmZpZ19kd29yZChwdnQtPnBjaV90YSwg TUNNVFIsICZwdnQtPmluZm8ubWNtdHIpKSB7CisJCQllZGFjX2RiZygwLCAiRmFpbGVkIHRvIHJl YWQgTUNNVFIgcmVnaXN0ZXJcbiIpOworCQkJcmV0dXJuIC1FTk9ERVY7CisJCX0KIAkJaWYgKElT X0xPQ0tTVEVQX0VOQUJMRUQocHZ0LT5pbmZvLm1jbXRyKSkgewogCQkJZWRhY19kYmcoMCwgIkxv Y2tzdGVwIGlzIGVuYWJsZWRcbiIpOwogCQkJbW9kZSA9IEVEQUNfUzhFQ0Q4RUQ7CkBAIC0yMDky LDcgKzIxMTgsOCBAQCBzdGF0aWMgaW50IGdldF9tZW1vcnlfZXJyb3JfZGF0YShzdHJ1Y3QgbWVt X2N0bF9pbmZvICptY2ksCiAKIAlwY2lfcmVhZF9jb25maWdfZHdvcmQocHZ0LT5wY2lfdGFkW2Jh c2VfY2hdLCB0YWRfY2hfbmlsdl9vZmZzZXRbbl90YWRzXSwgJnRhZF9vZmZzZXQpOwogCi0JaWYg KHB2dC0+aXNfbWlycm9yZWQpIHsKKwlpZiAocHZ0LT5taXJyb3JfbW9kZSA9PSBGVUxMX01JUlJP UklORyB8fAorCSAgICAocHZ0LT5taXJyb3JfbW9kZSA9PSBBRERSX1JBTkdFX01JUlJPUklORyAm JiBuX3RhZHMgPT0gMCkpIHsKIAkJKmNoYW5uZWxfbWFzayB8PSAxIDw8ICgoYmFzZV9jaCArIDIp ICUgNCk7CiAJCXN3aXRjaChjaF93YXkpIHsKIAkJY2FzZSAyOgpAQCAtMjEwMyw4ICsyMTMwLDEy IEBAIHN0YXRpYyBpbnQgZ2V0X21lbW9yeV9lcnJvcl9kYXRhKHN0cnVjdCBtZW1fY3RsX2luZm8g Km1jaSwKIAkJCXNwcmludGYobXNnLCAiSW52YWxpZCBtaXJyb3Igc2V0LiBDYW4ndCBkZWNvZGUg YWRkciIpOwogCQkJcmV0dXJuIC1FSU5WQUw7CiAJCX0KLQl9IGVsc2UKKworCQlwdnQtPmlzX2N1 cl9hZGRyX21pcnJvcmVkID0gdHJ1ZTsKKwl9IGVsc2UgewogCQlzY2tfeGNoID0gKDEgPDwgc2Nr X3dheSkgKiBjaF93YXk7CisJCXB2dC0+aXNfY3VyX2FkZHJfbWlycm9yZWQgPSBmYWxzZTsKKwl9 CiAKIAlpZiAocHZ0LT5pc19sb2Nrc3RlcCkKIAkJKmNoYW5uZWxfbWFzayB8PSAxIDw8ICgoYmFz ZV9jaCArIDEpICUgNCk7CkBAIC0yOTY3LDcgKzI5OTgsNyBAQCBzdGF0aWMgdm9pZCBzYnJpZGdl X21jZV9vdXRwdXRfZXJyb3Ioc3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpLAogCSAqIEVEQUMgY29y ZSBzaG91bGQgYmUgaGFuZGxpbmcgdGhlIGNoYW5uZWwgbWFzaywgaW4gb3JkZXIgdG8gcG9pbnQK IAkgKiB0byB0aGUgZ3JvdXAgb2YgZGltbSdzIHdoZXJlIHRoZSBlcnJvciBtYXkgYmUgaGFwcGVu aW5nLgogCSAqLwotCWlmICghcHZ0LT5pc19sb2Nrc3RlcCAmJiAhcHZ0LT5pc19taXJyb3JlZCAm JiAhcHZ0LT5pc19jbG9zZV9wZykKKwlpZiAoIXB2dC0+aXNfbG9ja3N0ZXAgJiYgIXB2dC0+aXNf Y3VyX2FkZHJfbWlycm9yZWQgJiYgIXB2dC0+aXNfY2xvc2VfcGcpCiAJCWNoYW5uZWwgPSBmaXJz dF9jaGFubmVsOwogCiAJc25wcmludGYobXNnLCBzaXplb2YobXNnKSwK