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: [2/2] x86/MCE: Always save MCA_{ADDR,MISC,SYND} register contents From: Yazen Ghannam Message-Id: <20180326191526.64314-2-Yazen.Ghannam@amd.com> Date: Mon, 26 Mar 2018 14:15:26 -0500 To: linux-edac@vger.kernel.org Cc: Yazen Ghannam , linux-kernel@vger.kernel.org, bp@suse.de, tony.luck@intel.com, x86@kernel.org List-ID: RnJvbTogWWF6ZW4gR2hhbm5hbSA8eWF6ZW4uZ2hhbm5hbUBhbWQuY29tPgoKVGhlIEludGVsIFNE TSBhbmQgQU1EIEFQTSBib3RoIHN0YXRlIHRoYXQgdGhlIGNvbnRlbnRzIG9mIHRoZSBNQ0FfQURE UgpyZWdpc3RlciBzaG91bGQgYmUgc2F2ZWQgaWYgTUNBX1NUQVRVU1tBRERSVl0gaXMgc2V0LiBU aGUgc2FtZSBhcHBsaWVzCnRvIE1DQV9NSVNDIGFuZCBNQ0FfU1lORCAob24gU01DQSBzeXN0ZW1z KSBhbmQgdGhlaXIgcmVzcGVjdGl2ZSB2YWxpZApiaXRzLgoKSG93ZXZlciwgdGhlIEZhbTE3aCBQ cm9jZXNzb3IgUHJvZ3JhbW1pbmcgUmVmZXJlbmNlIHN0YXRlcwoiRXJyb3IgaGFuZGxlcnMgc2hv dWxkIHNhdmUgdGhlIHZhbHVlcyBpbiBNQ0FfQUREUiwgTUNBX01JU0MwLCBhbmQKTUNBX1NZTkQg ZXZlbiBpZiBNQ0FfU1RBVFVTW0FkZHJWXSwgTUNBX1NUQVRVU1tNaXNjVl0sIGFuZApNQ0FfU1RB VFVTW1N5bmRWXSBhcmUgemVyby4iCgpUaGlzIGlzIHRvIGVuc3VyZSB0aGF0IGFsbCBNQ0Egc3Rh dGUgaW5mb3JtYXRpb24gaXMgY29sbGVjdGVkIGV2ZW4gaWYKc29mdHdhcmUgY2Fubm90IGFjdCB1 cG9uIGl0IChiZWNhdXNlIHRoZSB2YWxpZCBiaXRzIGFyZSBjbGVhcmVkKS4KClNvIGFsd2F5cyBz YXZlIHRoZSBhdXhpbGlhcnkgTUNBIHJlZ2lzdGVyIGNvbnRlbnRzIGV2ZW4gaWYgdGhlIHZhbGlk CmJpdHMgYXJlIGNsZWFyZWQuIFRoaXMgc2hvdWxkIG5vdCBhZmZlY3QgZXJyb3IgcHJvY2Vzc2lu ZyBiZWNhdXNlCnNvZnR3YXJlIHNob3VsZCBzdGlsbCBjaGVjayB0aGUgdmFsaWQgYml0cyBiZWZv cmUgdXNpbmcgdGhlIHJlZ2lzdGVyCmNvbnRlbnRzIGZvciBlcnJvciBwcm9jZXNzaW5nLgoKQWxz bywgcHJpbnQgTUNBX3tBRERSLE1JU0MsU1lORH0gZXZlbiBpZiB0aGVpciB2YWxpZCBiaXRzIGFy ZSBub3Qgc2V0LgpQcmludGluZyBmcm9tIEVEQUMvbWNlX2FtZCBpcyBpbmNsdWRlZCBoZXJlIHNp bmNlIHdlIHdhbnQgdG8gZG8gdGhpcyBvbgpBTUQgc3lzdGVtcy4KClNpZ25lZC1vZmYtYnk6IFlh emVuIEdoYW5uYW0gPHlhemVuLmdoYW5uYW1AYW1kLmNvbT4KLS0tCiBhcmNoL3g4Ni9rZXJuZWwv Y3B1L21jaGVjay9tY2UuYyAgICAgfCAyMyArKysrKysrLS0tLS0tLS0tLS0tLS0tLQogYXJjaC94 ODYva2VybmVsL2NwdS9tY2hlY2svbWNlX2FtZC5jIHwgMTAgKysrLS0tLS0tLQogZHJpdmVycy9l ZGFjL21jZV9hbWQuYyAgICAgICAgICAgICAgIHwgMTAgKysrLS0tLS0tLQogMyBmaWxlcyBjaGFu Z2VkLCAxMyBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9hcmNo L3g4Ni9rZXJuZWwvY3B1L21jaGVjay9tY2UuYyBiL2FyY2gveDg2L2tlcm5lbC9jcHUvbWNoZWNr L21jZS5jCmluZGV4IDQyY2YyODgwZDBlZC4uYTU1NmUxY2FkZmJjIDEwMDY0NAotLS0gYS9hcmNo L3g4Ni9rZXJuZWwvY3B1L21jaGVjay9tY2UuYworKysgYi9hcmNoL3g4Ni9rZXJuZWwvY3B1L21j aGVjay9tY2UuYwpAQCAtMjQ4LDE5ICsyNDgsMTQgQEAgc3RhdGljIHZvaWQgX19wcmludF9tY2Uo c3RydWN0IG1jZSAqbSkKIAl9CiAKIAlwcl9lbWVyZyhIV19FUlIgIlRTQyAlbGx4ICIsIG0tPnRz Yyk7Ci0JaWYgKG0tPmFkZHIpCi0JCXByX2NvbnQoIkFERFIgJWxseCAiLCBtLT5hZGRyKTsKLQlp ZiAobS0+bWlzYykKLQkJcHJfY29udCgiTUlTQyAlbGx4ICIsIG0tPm1pc2MpOworCXByX2NvbnQo IkFERFIgJTAxNmxseCAiLCBtLT5hZGRyKTsKKwlwcl9jb250KCJNSVNDICUwMTZsbHhcbiIsIG0t Pm1pc2MpOwogCiAJaWYgKG1jZV9mbGFncy5zbWNhKSB7Ci0JCWlmIChtLT5zeW5kKQotCQkJcHJf Y29udCgiU1lORCAlbGx4ICIsIG0tPnN5bmQpOwotCQlpZiAobS0+aXBpZCkKLQkJCXByX2NvbnQo IklQSUQgJWxseCAiLCBtLT5pcGlkKTsKKwkJcHJfZW1lcmcoSFdfRVJSICJJUElEICUwMTZsbHgg IiwgbS0+aXBpZCk7CisJCXByX2NvbnQoIlNZTkQgJTAxNmxseFxuIiwgbS0+c3luZCk7CiAJfQog Ci0JcHJfY29udCgiXG4iKTsKIAkvKgogCSAqIE5vdGUgdGhpcyBvdXRwdXQgaXMgcGFyc2VkIGJ5 IGV4dGVybmFsIHRvb2xzIGFuZCBvbGQgZmllbGRzCiAJICogc2hvdWxkIG5vdCBiZSBjaGFuZ2Vk LgpAQCAtNjM5LDEyICs2MzQsMTAgQEAgc3RhdGljIHN0cnVjdCBub3RpZmllcl9ibG9jayBtY2Vf ZGVmYXVsdF9uYiA9IHsKICAqLwogc3RhdGljIHZvaWQgbWNlX3JlYWRfYXV4KHN0cnVjdCBtY2Ug Km0sIGludCBpKQogewotCWlmIChtLT5zdGF0dXMgJiBNQ0lfU1RBVFVTX01JU0NWKQotCQltLT5t aXNjID0gbWNlX3JkbXNybChtc3Jfb3BzLm1pc2MoaSkpOworCW0tPm1pc2MgPSBtY2VfcmRtc3Js KG1zcl9vcHMubWlzYyhpKSk7CisJbS0+YWRkciA9IG1jZV9yZG1zcmwobXNyX29wcy5hZGRyKGkp KTsKIAogCWlmIChtLT5zdGF0dXMgJiBNQ0lfU1RBVFVTX0FERFJWKSB7Ci0JCW0tPmFkZHIgPSBt Y2VfcmRtc3JsKG1zcl9vcHMuYWRkcihpKSk7Ci0KIAkJLyoKIAkJICogTWFzayB0aGUgcmVwb3J0 ZWQgYWRkcmVzcyBieSB0aGUgcmVwb3J0ZWQgZ3JhbnVsYXJpdHkuCiAJCSAqLwpAQCAtNjY3LDkg KzY2MCw3IEBAIHN0YXRpYyB2b2lkIG1jZV9yZWFkX2F1eChzdHJ1Y3QgbWNlICptLCBpbnQgaSkK IAogCWlmIChtY2VfZmxhZ3Muc21jYSkgewogCQltLT5pcGlkID0gbWNlX3JkbXNybChNU1JfQU1E NjRfU01DQV9NQ3hfSVBJRChpKSk7Ci0KLQkJaWYgKG0tPnN0YXR1cyAmIE1DSV9TVEFUVVNfU1lO RFYpCi0JCQltLT5zeW5kID0gbWNlX3JkbXNybChNU1JfQU1ENjRfU01DQV9NQ3hfU1lORChpKSk7 CisJCW0tPnN5bmQgPSBtY2VfcmRtc3JsKE1TUl9BTUQ2NF9TTUNBX01DeF9TWU5EKGkpKTsKIAl9 CiB9CiAKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2tlcm5lbC9jcHUvbWNoZWNrL21jZV9hbWQuYyBi L2FyY2gveDg2L2tlcm5lbC9jcHUvbWNoZWNrL21jZV9hbWQuYwppbmRleCBmNzY2NmVlZjRhODcu LjVhMzdhZTcwNDU3OCAxMDA2NDQKLS0tIGEvYXJjaC94ODYva2VybmVsL2NwdS9tY2hlY2svbWNl X2FtZC5jCisrKyBiL2FyY2gveDg2L2tlcm5lbC9jcHUvbWNoZWNrL21jZV9hbWQuYwpAQCAtNzk5 LDEzICs3OTksMTIgQEAgc3RhdGljIHZvaWQgX19sb2dfZXJyb3IodW5zaWduZWQgaW50IGJhbmss IHU2NCBzdGF0dXMsIHU2NCBhZGRyLCB1NjQgbWlzYykKIAltY2Vfc2V0dXAoJm0pOwogCiAJbS5z dGF0dXMgPSBzdGF0dXM7CisJbS5hZGRyCSA9IGFkZHI7CiAJbS5taXNjICAgPSBtaXNjOwogCW0u YmFuayAgID0gYmFuazsKIAltLnRzYwkgPSByZHRzYygpOwogCiAJaWYgKG0uc3RhdHVzICYgTUNJ X1NUQVRVU19BRERSVikgewotCQltLmFkZHIgPSBhZGRyOwotCiAJCS8qCiAJCSAqIEV4dHJhY3Qg WzU1Ojxsc2I+XSB3aGVyZSBsc2IgaXMgdGhlIGxlYXN0IHNpZ25pZmljYW50CiAJCSAqICp2YWxp ZCogYml0IG9mIHRoZSBhZGRyZXNzIGJpdHMuCkBAIC04MTksOSArODE4LDcgQEAgc3RhdGljIHZv aWQgX19sb2dfZXJyb3IodW5zaWduZWQgaW50IGJhbmssIHU2NCBzdGF0dXMsIHU2NCBhZGRyLCB1 NjQgbWlzYykKIAogCWlmIChtY2VfZmxhZ3Muc21jYSkgewogCQlyZG1zcmwoTVNSX0FNRDY0X1NN Q0FfTUN4X0lQSUQoYmFuayksIG0uaXBpZCk7Ci0KLQkJaWYgKG0uc3RhdHVzICYgTUNJX1NUQVRV U19TWU5EVikKLQkJCXJkbXNybChNU1JfQU1ENjRfU01DQV9NQ3hfU1lORChiYW5rKSwgbS5zeW5k KTsKKwkJcmRtc3JsKE1TUl9BTUQ2NF9TTUNBX01DeF9TWU5EKGJhbmspLCBtLnN5bmQpOwogCX0K IAogCW1jZV9sb2coJm0pOwpAQCAtODQ5LDggKzg0Niw3IEBAIF9sb2dfZXJyb3JfYmFuayh1bnNp Z25lZCBpbnQgYmFuaywgdTMyIG1zcl9zdGF0LCB1MzIgbXNyX2FkZHIsIHU2NCBtaXNjKQogCWlm ICghKHN0YXR1cyAmIE1DSV9TVEFUVVNfVkFMKSkKIAkJcmV0dXJuIGZhbHNlOwogCi0JaWYgKHN0 YXR1cyAmIE1DSV9TVEFUVVNfQUREUlYpCi0JCXJkbXNybChtc3JfYWRkciwgYWRkcik7CisJcmRt c3JsKG1zcl9hZGRyLCBhZGRyKTsKIAogCV9fbG9nX2Vycm9yKGJhbmssIHN0YXR1cywgYWRkciwg bWlzYyk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZWRhYy9tY2VfYW1kLmMgYi9kcml2ZXJzL2Vk YWMvbWNlX2FtZC5jCmluZGV4IDJhYjRkNjFlZTQ3ZS4uMDA0NDI1Y2M4ZGRmIDEwMDY0NAotLS0g YS9kcml2ZXJzL2VkYWMvbWNlX2FtZC5jCisrKyBiL2RyaXZlcnMvZWRhYy9tY2VfYW1kLmMKQEAg LTk5MCwxNiArOTkwLDEyIEBAIGFtZF9kZWNvZGVfbWNlKHN0cnVjdCBub3RpZmllcl9ibG9jayAq bmIsIHVuc2lnbmVkIGxvbmcgdmFsLCB2b2lkICpkYXRhKQogCiAJcHJfY29udCgiXTogMHglMDE2 bGx4XG4iLCBtLT5zdGF0dXMpOwogCi0JaWYgKG0tPnN0YXR1cyAmIE1DSV9TVEFUVVNfQUREUlYp Ci0JCXByX2VtZXJnKEhXX0VSUiAiRXJyb3IgQWRkcjogMHglMDE2bGx4XG4iLCBtLT5hZGRyKTsK Kwlwcl9lbWVyZyhIV19FUlIgIkVycm9yIEFkZHI6IDB4JTAxNmxseFxuIiwgbS0+YWRkcik7CisJ cHJfZW1lcmcoSFdfRVJSICJNaXNjOiAweCUwMTZsbHhcbiIsIG0tPm1pc2MpOwogCiAJaWYgKGJv b3RfY3B1X2hhcyhYODZfRkVBVFVSRV9TTUNBKSkgewogCQlwcl9lbWVyZyhIV19FUlIgIklQSUQ6 IDB4JTAxNmxseCIsIG0tPmlwaWQpOwotCi0JCWlmIChtLT5zdGF0dXMgJiBNQ0lfU1RBVFVTX1NZ TkRWKQotCQkJcHJfY29udCgiLCBTeW5kcm9tZTogMHglMDE2bGx4IiwgbS0+c3luZCk7Ci0KLQkJ cHJfY29udCgiXG4iKTsKKwkJcHJfY29udCgiLCBTeW5kcm9tZTogMHglMDE2bGx4XG4iLCBtLT5z eW5kKTsKIAogCQlkZWNvZGVfc21jYV9lcnJvcihtKTsKIAkJZ290byBlcnJfY29kZTsK