From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Alex=20Benn=C3=A9e?= Subject: [PATCH v4 06/12] KVM: arm64: guest debug, add SW break point support Date: Fri, 15 May 2015 15:27:09 +0100 Message-ID: <1431700035-23479-7-git-send-email-alex.bennee@linaro.org> References: <1431700035-23479-1-git-send-email-alex.bennee@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Cc: Russell King , Jonathan Corbet , Gleb Natapov , jan.kiszka@siemens.com, "open list:DOCUMENTATION" , Will Deacon , open list , dahi@linux.vnet.ibm.com, Catalin Marinas , r65777@freescale.com, bp@suse.de To: kvm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, christoffer.dall@linaro.org, marc.zyngier@arm.com, peter.maydell@linaro.org, agraf@suse.de, drjones@redhat.com, pbonzini@redhat.com, zhichao.huang@linaro.org Return-path: In-Reply-To: <1431700035-23479-1-git-send-email-alex.bennee@linaro.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu List-Id: kvm.vger.kernel.org VGhpcyBhZGRzIHN1cHBvcnQgZm9yIFNXIGJyZWFrcG9pbnRzIGluc2VydGVkIGJ5IHVzZXJzcGFj ZS4KCldlIGRvIHRoaXMgYnkgdHJhcHBpbmcgYWxsIGd1ZXN0IHNvZnR3YXJlIGRlYnVnIGV4Y2Vw dGlvbnMgdG8gdGhlCmh5cGVydmlzb3IgKE1EQ1JfRUwyLlRERSkuIFRoZSBleGl0IGhhbmRsZXIg c2V0cyBhbiBleGl0IHJlYXNvbiBvZgpLVk1fRVhJVF9ERUJVRyB3aXRoIHRoZSBrdm1fZGVidWdf ZXhpdF9hcmNoIHN0cnVjdHVyZSBob2xkaW5nIHRoZQpleGNlcHRpb24gc3luZHJvbWUgaW5mb3Jt YXRpb24uCgpJdCB3aWxsIGJlIHVwIHRvIHVzZXJzcGFjZSB0byBleHRyYWN0IHRoZSBQQyAodmlh IEdFVF9PTkVfUkVHKSBhbmQKZGV0ZXJtaW5lIGlmIHRoZSBkZWJ1ZyBldmVudCB3YXMgZm9yIGEg YnJlYWtwb2ludCBpdCBpbnNlcnRlZC4gSWYgbm90CnVzZXJzcGFjZSB3aWxsIG5lZWQgdG8gcmUt aW5qZWN0IHRoZSBjb3JyZWN0IGV4Y2VwdGlvbiByZXN0YXJ0IHRoZQpoeXBlcnZpc29yIHRvIGRl bGl2ZXIgdGhlIGRlYnVnIGV4Y2VwdGlvbiB0byB0aGUgZ3Vlc3QuCgpBbnkgb3RoZXIgZ3Vlc3Qg c29mdHdhcmUgZGVidWcgZXhjZXB0aW9uIChlLmcuIHNpbmdsZSBzdGVwIG9yIEhXCmFzc2lzdGVk IGJyZWFrcG9pbnRzKSB3aWxsIGNhdXNlIGFuIGVycm9yIGFuZCB0aGUgVk0gdG8gYmUga2lsbGVk LiBUaGlzCmlzIGFkZHJlc3NlZCBieSBsYXRlciBwYXRjaGVzIHdoaWNoIGFkZCBzdXBwb3J0IGZv ciB0aGUgb3RoZXIgZGVidWcKdHlwZXMuCgpTaWduZWQtb2ZmLWJ5OiBBbGV4IEJlbm7DqWUgPGFs ZXguYmVubmVlQGxpbmFyby5vcmc+ClJldmlld2VkLWJ5OiBDaHJpc3RvZmZlciBEYWxsIDxjaHJp c3RvZmZlci5kYWxsQGxpbmFyby5vcmc+CgotLS0KdjIKICAtIHVwZGF0ZSB0byB1c2UgbmV3IGV4 aXQgc3RydWN0CiAgLSB0d2VhayBmb3IgQyBzZXR1cAogIC0gZG8gb3VyIHNldHVwIGluIGRlYnVn X3NldHVwL2NsZWFyIGNvZGUKICAtIGZpeGVkIHVwIGNvbW1lbnRzCnYzOgogIC0gZml4IHNwYWNp bmcgaW4gS1ZNX0dVRVNUREJHX1ZBTElEX01BU0sKICAtIGZpeCBhbmQgY2xhcmlmeSB3b3JkaW5n IG9uIGt2bV9oYW5kbGVfZ3Vlc3RfZGVidWcKICAtIGhhbmRsZSBlcnJvciBjYXNlIGluIGt2bV9o YW5kbGVfZ3Vlc3RfZGVidWcKICAtIHJlLXdvcmQgdGhlIGNvbW1pdCBtZXNzYWdlCnY0CiAgLSBy bSBlbHNlIGxlZwogIC0gYWRkIHItYi10YWcKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3Zp cnR1YWwva3ZtL2FwaS50eHQgYi9Eb2N1bWVudGF0aW9uL3ZpcnR1YWwva3ZtL2FwaS50eHQKaW5k ZXggYmE2MzVjNy4uMzNjODE0MyAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi92aXJ0dWFsL2t2 bS9hcGkudHh0CisrKyBiL0RvY3VtZW50YXRpb24vdmlydHVhbC9rdm0vYXBpLnR4dApAQCAtMjY2 Nyw3ICsyNjY3LDcgQEAgd2hlbiBydW5uaW5nLiBDb21tb24gY29udHJvbCBiaXRzIGFyZToKIFRo ZSB0b3AgMTYgYml0cyBvZiB0aGUgY29udHJvbCBmaWVsZCBhcmUgYXJjaGl0ZWN0dXJlIHNwZWNp ZmljIGNvbnRyb2wKIGZsYWdzIHdoaWNoIGNhbiBpbmNsdWRlIHRoZSBmb2xsb3dpbmc6CiAKLSAg LSBLVk1fR1VFU1REQkdfVVNFX1NXX0JQOiAgICAgdXNpbmcgc29mdHdhcmUgYnJlYWtwb2ludHMg W3g4Nl0KKyAgLSBLVk1fR1VFU1REQkdfVVNFX1NXX0JQOiAgICAgdXNpbmcgc29mdHdhcmUgYnJl YWtwb2ludHMgW3g4NiwgYXJtNjRdCiAgIC0gS1ZNX0dVRVNUREJHX1VTRV9IV19CUDogICAgIHVz aW5nIGhhcmR3YXJlIGJyZWFrcG9pbnRzIFt4ODYsIHMzOTBdCiAgIC0gS1ZNX0dVRVNUREJHX0lO SkVDVF9EQjogICAgIGluamVjdCBEQiB0eXBlIGV4Y2VwdGlvbiBbeDg2XQogICAtIEtWTV9HVUVT VERCR19JTkpFQ1RfQlA6ICAgICBpbmplY3QgQlAgdHlwZSBleGNlcHRpb24gW3g4Nl0KZGlmZiAt LWdpdCBhL2FyY2gvYXJtL2t2bS9hcm0uYyBiL2FyY2gvYXJtL2t2bS9hcm0uYwppbmRleCA0YTI3 NGUxLi4wNjRjMTA1IDEwMDY0NAotLS0gYS9hcmNoL2FybS9rdm0vYXJtLmMKKysrIGIvYXJjaC9h cm0va3ZtL2FybS5jCkBAIC0zMDIsNyArMzAyLDcgQEAgdm9pZCBrdm1fYXJjaF92Y3B1X3B1dChz dHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUpCiAJa3ZtX2FybV9zZXRfcnVubmluZ192Y3B1KE5VTEwpOwog fQogCi0jZGVmaW5lIEtWTV9HVUVTVERCR19WQUxJRF9NQVNLIChLVk1fR1VFU1REQkdfRU5BQkxF KQorI2RlZmluZSBLVk1fR1VFU1REQkdfVkFMSURfTUFTSyAoS1ZNX0dVRVNUREJHX0VOQUJMRSB8 IEtWTV9HVUVTVERCR19VU0VfU1dfQlApCiAKIC8qKgogICoga3ZtX2FyY2hfdmNwdV9pb2N0bF9z ZXRfZ3Vlc3RfZGVidWcgLSBzZXQgdXAgZ3Vlc3QgZGVidWdnaW5nCmRpZmYgLS1naXQgYS9hcmNo L2FybTY0L2t2bS9kZWJ1Zy5jIGIvYXJjaC9hcm02NC9rdm0vZGVidWcuYwppbmRleCBmYWYwZTFm Li44ZDFiZmE0IDEwMDY0NAotLS0gYS9hcmNoL2FybTY0L2t2bS9kZWJ1Zy5jCisrKyBiL2FyY2gv YXJtNjQva3ZtL2RlYnVnLmMKQEAgLTczLDYgKzczLDkgQEAgdm9pZCBrdm1fYXJtX3NldHVwX2Rl YnVnKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSkKIAlpZiAodHJhcF9kZWJ1ZykKIAkJdmNwdS0+YXJj aC5tZGNyX2VsMiB8PSBNRENSX0VMMl9UREE7CiAKKwkvKiBUcmFwIGJyZWFrcG9pbnRzPyAqLwor CWlmICh2Y3B1LT5ndWVzdF9kZWJ1ZyAmIEtWTV9HVUVTVERCR19VU0VfU1dfQlApCisJCXZjcHUt PmFyY2gubWRjcl9lbDIgfD0gTURDUl9FTDJfVERFOwogfQogCiB2b2lkIGt2bV9hcm1fY2xlYXJf ZGVidWcoc3RydWN0IGt2bV92Y3B1ICp2Y3B1KQpkaWZmIC0tZ2l0IGEvYXJjaC9hcm02NC9rdm0v aGFuZGxlX2V4aXQuYyBiL2FyY2gvYXJtNjQva3ZtL2hhbmRsZV9leGl0LmMKaW5kZXggNTI0ZmEy NS4uMjdmMzhhOSAxMDA2NDQKLS0tIGEvYXJjaC9hcm02NC9rdm0vaGFuZGxlX2V4aXQuYworKysg Yi9hcmNoL2FybTY0L2t2bS9oYW5kbGVfZXhpdC5jCkBAIC04Miw2ICs4Miw0MCBAQCBzdGF0aWMg aW50IGt2bV9oYW5kbGVfd2Z4KHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgc3RydWN0IGt2bV9ydW4g KnJ1bikKIAlyZXR1cm4gMTsKIH0KIAorLyoqCisgKiBrdm1faGFuZGxlX2d1ZXN0X2RlYnVnIC0g aGFuZGxlIGEgZGVidWcgZXhjZXB0aW9uIGluc3RydWN0aW9uCisgKgorICogQHZjcHU6CXRoZSB2 Y3B1IHBvaW50ZXIKKyAqIEBydW46CWFjY2VzcyB0byB0aGUga3ZtX3J1biBzdHJ1Y3R1cmUgZm9y IHJlc3VsdHMKKyAqCisgKiBXZSByb3V0ZSBhbGwgZGVidWcgZXhjZXB0aW9ucyB0aHJvdWdoIHRo ZSBzYW1lIGhhbmRsZXIuIElmIGJvdGggdGhlCisgKiBndWVzdCBhbmQgaG9zdCBhcmUgdXNpbmcg dGhlIHNhbWUgZGVidWcgZmFjaWxpdGllcyBpdCB3aWxsIGJlIHVwIHRvCisgKiB1c2Vyc3BhY2Ug dG8gcmUtaW5qZWN0IHRoZSBjb3JyZWN0IGV4Y2VwdGlvbiBmb3IgZ3Vlc3QgZGVsaXZlcnkuCisg KgorICogQHJldHVybjogMCAod2hpbGUgc2V0dGluZyBydW4tPmV4aXRfcmVhc29uKSwgLTEgZm9y IGVycm9yCisgKi8KK3N0YXRpYyBpbnQga3ZtX2hhbmRsZV9ndWVzdF9kZWJ1ZyhzdHJ1Y3Qga3Zt X3ZjcHUgKnZjcHUsIHN0cnVjdCBrdm1fcnVuICpydW4pCit7CisJdTMyIGhzciA9IGt2bV92Y3B1 X2dldF9oc3IodmNwdSk7CisJaW50IHJldCA9IDA7CisKKwlydW4tPmV4aXRfcmVhc29uID0gS1ZN X0VYSVRfREVCVUc7CisJcnVuLT5kZWJ1Zy5hcmNoLmhzciA9IGhzcjsKKworCXN3aXRjaCAoaHNy ID4+IEVTUl9FTHhfRUNfU0hJRlQpIHsKKwljYXNlIEVTUl9FTHhfRUNfQktQVDMyOgorCWNhc2Ug RVNSX0VMeF9FQ19CUks2NDoKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJa3ZtX2VycigiJXM6IHVu LWhhbmRsZWQgY2FzZSBoc3I6ICUjMDh4XG4iLAorCQkJX19mdW5jX18sICh1bnNpZ25lZCBpbnQp IGhzcik7CisJCXJldCA9IC0xOworCQlicmVhazsKKwl9CisKKwlyZXR1cm4gcmV0OworfQorCiBz dGF0aWMgZXhpdF9oYW5kbGVfZm4gYXJtX2V4aXRfaGFuZGxlcnNbXSA9IHsKIAlbRVNSX0VMeF9F Q19XRnhdCT0ga3ZtX2hhbmRsZV93ZngsCiAJW0VTUl9FTHhfRUNfQ1AxNV8zMl0JPSBrdm1faGFu ZGxlX2NwMTVfMzIsCkBAIC05Niw2ICsxMzAsOCBAQCBzdGF0aWMgZXhpdF9oYW5kbGVfZm4gYXJt X2V4aXRfaGFuZGxlcnNbXSA9IHsKIAlbRVNSX0VMeF9FQ19TWVM2NF0JPSBrdm1faGFuZGxlX3N5 c19yZWcsCiAJW0VTUl9FTHhfRUNfSUFCVF9MT1ddCT0ga3ZtX2hhbmRsZV9ndWVzdF9hYm9ydCwK IAlbRVNSX0VMeF9FQ19EQUJUX0xPV10JPSBrdm1faGFuZGxlX2d1ZXN0X2Fib3J0LAorCVtFU1Jf RUx4X0VDX0JLUFQzMl0JPSBrdm1faGFuZGxlX2d1ZXN0X2RlYnVnLAorCVtFU1JfRUx4X0VDX0JS SzY0XQk9IGt2bV9oYW5kbGVfZ3Vlc3RfZGVidWcsCiB9OwogCiBzdGF0aWMgZXhpdF9oYW5kbGVf Zm4ga3ZtX2dldF9leGl0X2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1KQotLSAKMi4zLjUK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmt2bWFybSBt YWlsaW5nIGxpc3QKa3ZtYXJtQGxpc3RzLmNzLmNvbHVtYmlhLmVkdQpodHRwczovL2xpc3RzLmNz LmNvbHVtYmlhLmVkdS9tYWlsbWFuL2xpc3RpbmZvL2t2bWFybQo=