From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andre Przywara Subject: [PATCH v2 23/27] ARM: vITS: handle INV command Date: Thu, 16 Mar 2017 11:20:26 +0000 Message-ID: <20170316112030.20419-24-andre.przywara@arm.com> References: <20170316112030.20419-1-andre.przywara@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1coTRA-0008HB-9z for xen-devel@lists.xenproject.org; Thu, 16 Mar 2017 11:19:20 +0000 In-Reply-To: <20170316112030.20419-1-andre.przywara@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Stefano Stabellini , Julien Grall Cc: xen-devel@lists.xenproject.org, Shanker Donthineni , Vijay Kilari List-Id: xen-devel@lists.xenproject.org VGhlIElOViBjb21tYW5kIGluc3RydWN0cyB0aGUgSVRTIHRvIHVwZGF0ZSB0aGUgY29uZmlndXJh dGlvbiBkYXRhIGZvcgphIGdpdmVuIExQSSBieSByZS1yZWFkaW5nIGl0cyBlbnRyeSBmcm9tIHRo ZSBwcm9wZXJ0eSB0YWJsZS4KV2UgZG9uJ3QgbmVlZCB0byBjYXJlIHNvIG11Y2ggYWJvdXQgdGhl IHByaW9yaXR5IHZhbHVlLCBidXQgZW5hYmxpbmcKb3IgZGlzYWJsaW5nIGFuIExQSSBoYXMgc29t ZSBlZmZlY3Q6IFdlIHJlbW92ZSBvciBwdXNoIHZpcnR1YWwgTFBJcwp0byB0aGVpciBWQ1BVcywg YWxzbyBjaGVjayB0aGUgdmlydHVhbCBwZW5kaW5nIGJpdCBpZiBhbiBMUEkgZ2V0cyBlbmFibGVk LgoKU2lnbmVkLW9mZi1ieTogQW5kcmUgUHJ6eXdhcmEgPGFuZHJlLnByenl3YXJhQGFybS5jb20+ Ci0tLQogeGVuL2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMgfCA1NyArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNTcgaW5zZXJ0aW9u cygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS92Z2ljLXYzLWl0cy5jIGIveGVuL2FyY2gv YXJtL3ZnaWMtdjMtaXRzLmMKaW5kZXggMjFhNjYzZS4uOGFmMDZhYyAxMDA2NDQKLS0tIGEveGVu L2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMKKysrIGIveGVuL2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMK QEAgLTI2NSw2ICsyNjUsNjAgQEAgc3RhdGljIGludCBpdHNfaGFuZGxlX2ludChzdHJ1Y3Qgdmly dF9pdHMgKml0cywgdWludDY0X3QgKmNtZHB0cikKICAgICByZXR1cm4gMDsKIH0KIAorLyoKKyAq IEZvciBhIGdpdmVuIHZpcnR1YWwgTFBJIHJlYWQgdGhlIGVuYWJsZWQgYml0IGZyb20gdGhlIHZp cnR1YWwgcHJvcGVydHkKKyAqIHRhYmxlIGFuZCB1cGRhdGUgdGhlIHZpcnR1YWwgSVJRJ3Mgc3Rh dGUuCisgKiBUaGlzIHRha2VzIGNhcmUgb2YgcmVtb3Zpbmcgb3IgcHVzaGluZyBvZiB2aXJ0dWFs IExQSXMgdG8gdGhlaXIgVkNQVXMuCisgKi8KK3N0YXRpYyB2b2lkIHVwZGF0ZV9scGlfZW5hYmxl ZF9zdGF0dXMoc3RydWN0IHZpcnRfaXRzKiBpdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHN0cnVjdCB2Y3B1ICp2Y3B1LCB1aW50MzJfdCB2bHBpKQoreworICAgIHN0 cnVjdCBwZW5kaW5nX2lycSAqcGlycSA9IGxwaV90b19wZW5kaW5nKHZjcHUsIHZscGksIGZhbHNl KTsKKyAgICB1aW50OF90IHByb3BlcnR5ID0gaXRzLT5kLT5hcmNoLnZnaWMucHJvcHRhYmxlW3Zs cGkgLSBMUElfT0ZGU0VUXTsKKworICAgIGlmICggcHJvcGVydHkgJiBMUElfUFJPUF9FTkFCTEVE ICkKKyAgICB7CisgICAgICAgIGlmICggcGlycSApCisgICAgICAgIHsKKyAgICAgICAgICAgIHVu c2lnbmVkIGxvbmcgZmxhZ3M7CisKKyAgICAgICAgICAgIHNldF9iaXQoR0lDX0lSUV9HVUVTVF9F TkFCTEVELCAmcGlycS0+c3RhdHVzKTsKKyAgICAgICAgICAgIHNwaW5fbG9ja19pcnFzYXZlKCZ2 Y3B1LT5hcmNoLnZnaWMubG9jaywgZmxhZ3MpOworICAgICAgICAgICAgaWYgKCAhbGlzdF9lbXB0 eSgmcGlycS0+aW5mbGlnaHQpICYmCisgICAgICAgICAgICAgICAgICF0ZXN0X2JpdChHSUNfSVJR X0dVRVNUX1ZJU0lCTEUsICZwaXJxLT5zdGF0dXMpICkKKyAgICAgICAgICAgICAgICBnaWNfcmFp c2VfZ3Vlc3RfaXJxKHZjcHUsIHZscGksIHByb3BlcnR5ICYgTFBJX1BST1BfUFJJT19NQVNLKTsK KyAgICAgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnZjcHUtPmFyY2gudmdpYy5sb2Nr LCBmbGFncyk7CisgICAgICAgIH0KKworICAgICAgICAvKiBDaGVjayB3aGV0aGVyIHRoZSBMUEkg aGFzIGZpcmVkIHdoaWxlIHRoZSBndWVzdCBoYWQgaXQgZGlzYWJsZWQuICovCisgICAgICAgIGlm ICggdGVzdF9hbmRfY2xlYXJfYml0KHZscGkgLSBMUElfT0ZGU0VULCB2Y3B1LT5hcmNoLnZnaWMu cGVuZHRhYmxlKSApCisgICAgICAgICAgICB2Z2ljX3ZjcHVfaW5qZWN0X2lycSh2Y3B1LCB2bHBp KTsKKyAgICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgaWYgKCBwaXJxICkKKyAgICAgICAg eworICAgICAgICAgICAgY2xlYXJfYml0KEdJQ19JUlFfR1VFU1RfRU5BQkxFRCwgJnBpcnEtPnN0 YXR1cyk7CisgICAgICAgICAgICBnaWNfcmVtb3ZlX2Zyb21fcXVldWVzKHZjcHUsIHZscGkpOwor ICAgICAgICB9CisgICAgfQorfQorCitzdGF0aWMgaW50IGl0c19oYW5kbGVfaW52KHN0cnVjdCB2 aXJ0X2l0cyAqaXRzLCB1aW50NjRfdCAqY21kcHRyKQoreworICAgIHVpbnQzMl90IGRldmlkID0g aXRzX2NtZF9nZXRfZGV2aWNlaWQoY21kcHRyKTsKKyAgICB1aW50MzJfdCBldmVudGlkID0gaXRz X2NtZF9nZXRfaWQoY21kcHRyKTsKKyAgICBzdHJ1Y3QgdmNwdSAqdmNwdTsKKyAgICB1aW50MzJf dCB2bHBpOworCisgICAgaWYgKCAhcmVhZF9pdHRlKGl0cywgZGV2aWQsIGV2ZW50aWQsICZ2Y3B1 LCAmdmxwaSkgKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICB1cGRhdGVfbHBpX2VuYWJsZWRf c3RhdHVzKGl0cywgdmNwdSwgdmxwaSk7CisKKyAgICByZXR1cm4gMDsKK30KKwogc3RhdGljIGlu dCBpdHNfaGFuZGxlX21hcGMoc3RydWN0IHZpcnRfaXRzICppdHMsIHVpbnQ2NF90ICpjbWRwdHIp CiB7CiAgICAgdWludDMyX3QgY29sbGlkID0gaXRzX2NtZF9nZXRfY29sbGVjdGlvbihjbWRwdHIp OwpAQCAtNDI4LDYgKzQ4Miw5IEBAIHN0YXRpYyBpbnQgdmdpY19pdHNfaGFuZGxlX2NtZHMoc3Ry dWN0IGRvbWFpbiAqZCwgc3RydWN0IHZpcnRfaXRzICppdHMsCiAgICAgICAgIGNhc2UgR0lUU19D TURfSU5UOgogICAgICAgICAgICAgaXRzX2hhbmRsZV9pbnQoaXRzLCBjbWRwdHIpOwogICAgICAg ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgR0lUU19DTURfSU5WOgorICAgICAgICAgICAgaXRz X2hhbmRsZV9pbnYoaXRzLCBjbWRwdHIpOworCSAgICBicmVhazsKICAgICAgICAgY2FzZSBHSVRT X0NNRF9NQVBDOgogICAgICAgICAgICAgaXRzX2hhbmRsZV9tYXBjKGl0cywgY21kcHRyKTsKICAg ICAgICAgICAgIGJyZWFrOwotLSAKMi45LjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0 cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK