From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ross Lagerwall Subject: [PATCH v2] vmx: Restore debug registers when injecting #DB traps Date: Fri, 11 Mar 2016 16:23:33 +0000 Message-ID: <1457713413-2157-1-git-send-email-ross.lagerwall@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: Ross Lagerwall , Kevin Tian , Jan Beulich , Jun Nakajima , Andrew Cooper List-Id: xen-devel@lists.xenproject.org Q29tbWl0IGE5MjliZWUwZTY1MiAoIng4Ni92bXg6IEZpeCBpbmplY3Rpb24gb2YgI0RCIHRyYXBz IGZvbGxvd2luZwpYU0EtMTU2IikgcHJldmVudHMgYW4gaW5maW5pdGUgbG9vcCBpbiBjZXJ0YWlu ICNEQiB0cmFwcy4gSG93ZXZlciwgaXQKY2hhbmdlZCB0aGUgYmVoYXZpb3IgdG8gbm90IGNhbGwg aHZtX2h3X2luamVjdF90cmFwKCkgZm9yICNEQiBhbmQgI0FDCnRyYXBzIHdoaWNoIHdoaWNoIG1l YW5zIHRoYXQgdGhlIGRlYnVnIHJlZ2lzdGVycyBhcmUgbm90IHJlc3RvcmVkCmNvcnJlY3RseSBh bmQgbnVsbGlmaWVkIGNvbW1pdCBiNTZhZTViNDhjMzggKCJWTVg6IGZpeC9hZGp1c3QgdHJhcApp bmplY3Rpb24iKS4KClRvIGZpeCB0aGlzLCByZXN0b3JlIHRoZSBvcmlnaW5hbCBjb2RlIHBhdGgg dGhyb3VnaCBodm1faW5qZWN0X3RyYXAoKSwKYnV0IGVuc3VyZSB0aGF0IHRoZSBzdHJ1Y3QgaHZt X3RyYXAgaXMgcG9wdWxhdGVkIHdpdGggYWxsIHRoZSByZXF1aXJlZApkYXRhLgoKU2lnbmVkLW9m Zi1ieTogUm9zcyBMYWdlcndhbGwgPHJvc3MubGFnZXJ3YWxsQGNpdHJpeC5jb20+Ci0tLQpDaGFu Z2VkIGluIHYyOgpVc2UgTUFTS19FWFRSLgpPbmx5IHNldCBpbnN0cnVjdGlvbiBsZW5ndGggZm9y IGNlcnRhaW4gZXZlbnQgdHlwZXMuCgogeGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMgfCAzMyAr KysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyMCBpbnNl cnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvaHZt L3ZteC92bXguYyBiL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZteC5jCmluZGV4IDljNWEzODguLmJj NDQxMGYgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZteC5jCisrKyBiL3hlbi9h cmNoL3g4Ni9odm0vdm14L3ZteC5jCkBAIC0zMDkxLDI0ICszMDkxLDMxIEBAIHN0YXRpYyBpbnQg dm14X2hhbmRsZV9lb2lfd3JpdGUodm9pZCkKICAqIEl0IGlzIHRoZSBjYWxsZXJzIHJlc3BvbnNp YmlsaXR5IHRvIGVuc3VyZSB0aGF0IHRoaXMgZnVuY3Rpb24gaXMgb25seSB1c2VkCiAgKiBpbiB0 aGUgY29udGV4dCBvZiBhbiBhcHByb3ByaWF0ZSB2bWV4aXQuCiAgKi8KLXN0YXRpYyB2b2lkIHZt eF9wcm9wYWdhdGVfaW50cih2b2lkKQorc3RhdGljIHZvaWQgdm14X3Byb3BhZ2F0ZV9pbnRyKHVu c2lnbmVkIGxvbmcgaW50cikKIHsKLSAgICB1bnNpZ25lZCBsb25nIGludHIsIHRtcDsKLQotICAg IF9fdm1yZWFkKFZNX0VYSVRfSU5UUl9JTkZPLCAmaW50cik7Ci0KLSAgICBBU1NFUlQoaW50ciAm IElOVFJfSU5GT19WQUxJRF9NQVNLKTsKLQotICAgIF9fdm13cml0ZShWTV9FTlRSWV9JTlRSX0lO Rk8sIGludHIpOworICAgIHN0cnVjdCBodm1fdHJhcCB0cmFwID0geworICAgICAgICAudmVjdG9y ID0gTUFTS19FWFRSKGludHIsIElOVFJfSU5GT19WRUNUT1JfTUFTSyksCisgICAgICAgIC50eXBl ID0gTUFTS19FWFRSKGludHIsIElOVFJfSU5GT19JTlRSX1RZUEVfTUFTSyksCisgICAgfTsKKyAg ICB1bnNpZ25lZCBsb25nIHRtcDsKIAogICAgIGlmICggaW50ciAmIElOVFJfSU5GT19ERUxJVkVS X0NPREVfTUFTSyApCiAgICAgewogICAgICAgICBfX3ZtcmVhZChWTV9FWElUX0lOVFJfRVJST1Jf Q09ERSwgJnRtcCk7Ci0gICAgICAgIF9fdm13cml0ZShWTV9FTlRSWV9FWENFUFRJT05fRVJST1Jf Q09ERSwgdG1wKTsKKyAgICAgICAgdHJhcC5lcnJvcl9jb2RlID0gdG1wOwogICAgIH0KKyAgICBl bHNlCisgICAgICAgIHRyYXAuZXJyb3JfY29kZSA9IEhWTV9ERUxJVkVSX05PX0VSUk9SX0NPREU7 CisKKyAgICBpZiAoIHRyYXAudHlwZSA+PSBYODZfRVZFTlRUWVBFX1NXX0lOVEVSUlVQVCApCisg ICAgeworICAgICAgICBfX3ZtcmVhZChWTV9FWElUX0lOU1RSVUNUSU9OX0xFTiwgJnRtcCk7Cisg ICAgICAgIHRyYXAuaW5zbl9sZW4gPSB0bXA7CisgICAgfQorICAgIGVsc2UKKyAgICAgICAgdHJh cC5pbnNuX2xlbiA9IDA7CiAKLSAgICBfX3ZtcmVhZChWTV9FWElUX0lOU1RSVUNUSU9OX0xFTiwg JnRtcCk7Ci0gICAgX192bXdyaXRlKFZNX0VOVFJZX0lOU1RSVUNUSU9OX0xFTiwgdG1wKTsKKyAg ICBodm1faW5qZWN0X3RyYXAoJnRyYXApOwogfQogCiBzdGF0aWMgdm9pZCB2bXhfaWR0dl9yZWlu amVjdCh1bnNpZ25lZCBsb25nIGlkdHZfaW5mbykKQEAgLTMzNjYsNyArMzM3Myw3IEBAIHZvaWQg dm14X3ZtZXhpdF9oYW5kbGVyKHN0cnVjdCBjcHVfdXNlcl9yZWdzICpyZWdzKQogICAgICAgICAg ICAgSFZNVFJBQ0VfMUQoVFJBUF9ERUJVRywgZXhpdF9xdWFsaWZpY2F0aW9uKTsKICAgICAgICAg ICAgIHdyaXRlX2RlYnVncmVnKDYsIGV4aXRfcXVhbGlmaWNhdGlvbiB8IERSX1NUQVRVU19SRVNF UlZFRF9PTkUpOwogICAgICAgICAgICAgaWYgKCAhdi0+ZG9tYWluLT5kZWJ1Z2dlcl9hdHRhY2hl ZCApCi0gICAgICAgICAgICAgICAgdm14X3Byb3BhZ2F0ZV9pbnRyKCk7CisgICAgICAgICAgICAg ICAgdm14X3Byb3BhZ2F0ZV9pbnRyKGludHJfaW5mbyk7CiAgICAgICAgICAgICBlbHNlCiAgICAg ICAgICAgICAgICAgZG9tYWluX3BhdXNlX2Zvcl9kZWJ1Z2dlcigpOwogICAgICAgICAgICAgYnJl YWs7CkBAIC0zNDM3LDcgKzM0NDQsNyBAQCB2b2lkIHZteF92bWV4aXRfaGFuZGxlcihzdHJ1Y3Qg Y3B1X3VzZXJfcmVncyAqcmVncykKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIFRS QVBfYWxpZ25tZW50X2NoZWNrOgogICAgICAgICAgICAgSFZNVFJBQ0VfMUQoVFJBUCwgdmVjdG9y KTsKLSAgICAgICAgICAgIHZteF9wcm9wYWdhdGVfaW50cigpOworICAgICAgICAgICAgdm14X3By b3BhZ2F0ZV9pbnRyKGludHJfaW5mbyk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2Fz ZSBUUkFQX25taToKICAgICAgICAgICAgIGlmICggTUFTS19FWFRSKGludHJfaW5mbywgSU5UUl9J TkZPX0lOVFJfVFlQRV9NQVNLKSAhPQotLSAKMi40LjMKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZl bEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=