From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: [RFC 01/22] xen/arm: do_trap_instr_abort_guest: Move the IPA computation out of the switch Date: Thu, 28 Jul 2016 15:51:24 +0100 Message-ID: <1469717505-8026-2-git-send-email-julien.grall@arm.com> References: <1469717505-8026-1-git-send-email-julien.grall@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1469717505-8026-1-git-send-email-julien.grall@arm.com> 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: proskurin@sec.in.tum.de, Julien Grall , sstabellini@kernel.org, steve.capper@arm.com, wei.chen@linaro.org List-Id: xen-devel@lists.xenproject.org QSBmb2xsb3ctdXAgcGF0Y2ggd2lsbCBhZGQgbW9yZSBjYXNlIHRvIHRoZSBzd2l0Y2ggdGhhdCB3 aWxsIHJlcXVpcmUgdGhlCklQQS4gU28gbW92ZSB0aGUgY29tcHV0YXRpb24gb3V0IG9mIHRoZSBz d2l0Y2guCgpTaWduZWQtb2ZmLWJ5OiBKdWxpZW4gR3JhbGwgPGp1bGllbi5ncmFsbEBhcm0uY29t PgotLS0KIHhlbi9hcmNoL2FybS90cmFwcy5jIHwgMzYgKysrKysrKysrKysrKysrKysrLS0tLS0t LS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL3RyYXBzLmMgYi94ZW4vYXJjaC9hcm0v dHJhcHMuYwppbmRleCA2ODNiY2IyLi40NmUwNjYzIDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0v dHJhcHMuYworKysgYi94ZW4vYXJjaC9hcm0vdHJhcHMuYwpAQCAtMjQwMywzNSArMjQwMywzNSBA QCBzdGF0aWMgdm9pZCBkb190cmFwX2luc3RyX2Fib3J0X2d1ZXN0KHN0cnVjdCBjcHVfdXNlcl9y ZWdzICpyZWdzLAogICAgIGludCByYzsKICAgICByZWdpc3Rlcl90IGd2YSA9IFJFQURfU1lTUkVH KEZBUl9FTDIpOwogICAgIHVpbnQ4X3QgZnNjID0gaHNyLmlhYnQuaWZzYyAmIH5GU0NfTExfTUFT SzsKKyAgICBwYWRkcl90IGdwYTsKKworICAgIGlmICggaHBmYXJfaXNfdmFsaWQoaHNyLmlhYnQu czFwdHcsIGZzYykgKQorICAgICAgICBncGEgPSBnZXRfZmF1bHRpbmdfaXBhKGd2YSk7CisgICAg ZWxzZQorICAgIHsKKyAgICAgICAgLyoKKyAgICAgICAgICogRmx1c2ggdGhlIFRMQiB0byBtYWtl IHN1cmUgdGhlIERUTEIgaXMgY2xlYXIgYmVmb3JlCisgICAgICAgICAqIGRvaW5nIEdWQS0+SVBB IHRyYW5zbGF0aW9uLiBJZiB3ZSBnb3QgaGVyZSBiZWNhdXNlIG9mCisgICAgICAgICAqIGFuIGVu dHJ5IG9ubHkgcHJlc2VudCBpbiB0aGUgSVRMQiwgdGhpcyB0cmFuc2xhdGlvbiBtYXkKKyAgICAg ICAgICogc3RpbGwgYmUgaW5hY2N1cmF0ZS4KKyAgICAgICAgICovCisgICAgICAgIGZsdXNoX3Rs Yl9sb2NhbCgpOworCisgICAgICAgIHJjID0gZ3ZhX3RvX2lwYShndmEsICZncGEsIEdWMk1fUkVB RCk7CisgICAgICAgIGlmICggcmMgPT0gLUVGQVVMVCApCisgICAgICAgICAgICByZXR1cm47IC8q IFRyeSBhZ2FpbiAqLworICAgIH0KIAogICAgIHN3aXRjaCAoIGZzYyApCiAgICAgewogICAgIGNh c2UgRlNDX0ZMVF9QRVJNOgogICAgIHsKLSAgICAgICAgcGFkZHJfdCBncGE7CiAgICAgICAgIGNv bnN0IHN0cnVjdCBucGZlYyBucGZlYyA9IHsKICAgICAgICAgICAgIC5pbnNuX2ZldGNoID0gMSwK ICAgICAgICAgICAgIC5nbGFfdmFsaWQgPSAxLAogICAgICAgICAgICAgLmtpbmQgPSBoc3IuaWFi dC5zMXB0dyA/IG5wZmVjX2tpbmRfaW5fZ3B0IDogbnBmZWNfa2luZF93aXRoX2dsYQogICAgICAg ICB9OwogCi0gICAgICAgIGlmICggaHBmYXJfaXNfdmFsaWQoaHNyLmlhYnQuczFwdHcsIGZzYykg KQotICAgICAgICAgICAgZ3BhID0gZ2V0X2ZhdWx0aW5nX2lwYShndmEpOwotICAgICAgICBlbHNl Ci0gICAgICAgIHsKLSAgICAgICAgICAgIC8qCi0gICAgICAgICAgICAgKiBGbHVzaCB0aGUgVExC IHRvIG1ha2Ugc3VyZSB0aGUgRFRMQiBpcyBjbGVhciBiZWZvcmUKLSAgICAgICAgICAgICAqIGRv aW5nIEdWQS0+SVBBIHRyYW5zbGF0aW9uLiBJZiB3ZSBnb3QgaGVyZSBiZWNhdXNlIG9mCi0gICAg ICAgICAgICAgKiBhbiBlbnRyeSBvbmx5IHByZXNlbnQgaW4gdGhlIElUTEIsIHRoaXMgdHJhbnNs YXRpb24gbWF5Ci0gICAgICAgICAgICAgKiBzdGlsbCBiZSBpbmFjY3VyYXRlLgotICAgICAgICAg ICAgICovCi0gICAgICAgICAgICBmbHVzaF90bGJfbG9jYWwoKTsKLQotICAgICAgICAgICAgcmMg PSBndmFfdG9faXBhKGd2YSwgJmdwYSwgR1YyTV9SRUFEKTsKLSAgICAgICAgICAgIGlmICggcmMg PT0gLUVGQVVMVCApCi0gICAgICAgICAgICAgICAgcmV0dXJuOyAvKiBUcnkgYWdhaW4gKi8KLSAg ICAgICAgfQotCiAgICAgICAgIHJjID0gcDJtX21lbV9hY2Nlc3NfY2hlY2soZ3BhLCBndmEsIG5w ZmVjKTsKIAogICAgICAgICAvKiBUcmFwIHdhcyB0cmlnZ2VyZWQgYnkgbWVtX2FjY2Vzcywgd29y ayBoZXJlIGlzIGRvbmUgKi8KLS0gCjEuOS4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==