From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergej Proskurin Subject: Re: [PATCH 06/18] arm/altp2m: Add a(p2m) table flushing routines. Date: Mon, 4 Jul 2016 14:12:43 +0200 Message-ID: <93c4ac63-a7f4-c45b-6652-300c3ce6b650@sec.in.tum.de> References: <20160704114605.10086-1-proskurin@sec.in.tum.de> <20160704114605.10086-7-proskurin@sec.in.tum.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bK2fx-0007Vk-KW for xen-devel@lists.xenproject.org; Mon, 04 Jul 2016 12:08:33 +0000 In-Reply-To: <20160704114605.10086-7-proskurin@sec.in.tum.de> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Julien Grall , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org QVJNIGFsbG93cyB0aGUgdXNlIG9mIGNvbmNhdGVuYXRlZCByb290IChmaXJzdC1sZXZlbCkgcGFn ZSB0YWJsZXMgKHRoZXJlCmFyZSBQMk1fUk9PVF9QQUdFUyBjb25zZWN1dGl2ZSBwYWdlcyB0aGF0 IGFyZSB1c2VkIGZvciB0aGUgcm9vdCBsZXZlbApwYWdlIHRhYmxlLiBXZSBuZWVkIHRvIHByZXZl bnQgZnJlZWluZyBvbmUgb2YgdGhlc2UgY29uY2F0ZW5hdGVkIHBhZ2VzCmR1cmluZyB0aGUgcHJv Y2VzcyBvZiBmbHVzaGluZyBpbiBwMm1fZmx1c2hfdGFibGUgKHNpbXBseSBiZWNhdXNlIG5ldwpw YWdlcyBtaWdodCBiZSByZS1pbnNlcnRlZCBhdCBhIGxhdGVyIHBvaW50IGluIHRpbWUgaW50byB0 aGUgcGFnZSB0YWJsZSkuCgoKT24gMDcvMDQvMjAxNiAwMTo0NSBQTSwgU2VyZ2VqIFByb3NrdXJp biB3cm90ZToKPiBUaGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBkaWZmZXJlbnRpYXRlcyBiZXR3 ZWVuIGZsdXNoaW5nIGFuZAo+IGRlc3Ryb3lpbmcgYWx0cDJtIHZpZXdzLiBUaGlzIGNvbW1pdCBh ZGRzIHRoZSBmdW5jdGlvbnMKPiBwMm1fZmx1c2hfYWx0cDJtLCBhbmQgcDJtX2ZsdXNoX3RhYmxl LCB3aGljaCBhbGxvdyB0byBmbHVzaCBhbGwgb3IKPiBpbmRpdmlkdWFsIGFsdHAybSB2aWV3cyB3 aXRob3V0IGRlc3Ryb3lpbmcgdGhlIGVudGlyZSB0YWJsZS4gSW4gdGhpcwo+IHdheSwgYWx0cDJt IHZpZXdzIGNhbiBiZSByZXVzZWQgYXQgYSBsYXRlciBwb2ludCBpbiB0aW1lLgo+IAo+IEluIGFk ZGl0aW9uLCB0aGUgaW1wbGVtZW50YXRpb24gY2xlYXJzIGFsbCBhbHRwMm0gZW50cmllcyBkdXJp bmcgdGhlCj4gcHJvY2VzcyBvZiBmbHVzaGluZy4gVGhlIHNhbWUgYXBwbGllcyB0byBob3N0cDJt IGVudHJpZXMsIHdoZW4gaXQgaXMKPiBkZXN0cm95ZWQuIEluIHRoaXMgd2F5LCBmdXJ0aGVyIGRv bWFpbiBhbmQgcDJtIGFsbG9jYXRpb25zIHdpbGwgbm90Cj4gdW5pbnRlbnRpb25hbGx5IHJldXNl IG9sZCBwMm0gbWFwcGluZ3MuCj4gCj4gU2lnbmVkLW9mZi1ieTogU2VyZ2VqIFByb3NrdXJpbiA8 cHJvc2t1cmluQHNlYy5pbi50dW0uZGU+Cj4gLS0tCj4gQ2M6IFN0ZWZhbm8gU3RhYmVsbGluaSA8 c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4KPiBDYzogSnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxA YXJtLmNvbT4KPiAtLS0KPiAgeGVuL2FyY2gvYXJtL3AybS5jICAgICAgICB8IDY3ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gIHhlbi9pbmNsdWRlL2Fz bS1hcm0vcDJtLmggfCAxNSArKysrKysrKy0tLQo+ICAyIGZpbGVzIGNoYW5nZWQsIDc4IGluc2Vy dGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9w Mm0uYyBiL3hlbi9hcmNoL2FybS9wMm0uYwo+IGluZGV4IDRhNzQ1ZmQuLmFlNzg5ZTYgMTAwNjQ0 Cj4gLS0tIGEveGVuL2FyY2gvYXJtL3AybS5jCj4gKysrIGIveGVuL2FyY2gvYXJtL3AybS5jCj4g QEAgLTIxMTAsNiArMjExMCw3MyBAQCBpbnQgcDJtX2luaXRfYWx0cDJtX2J5X2lkKHN0cnVjdCBk b21haW4gKmQsIHVuc2lnbmVkIGludCBpZHgpCj4gICAgICByZXR1cm4gcmM7Cj4gIH0KPiAgCj4g Ky8qIFJlc2V0IHRoaXMgcDJtIHRhYmxlIHRvIGJlIGVtcHR5ICovCj4gK3N0YXRpYyB2b2lkIHAy bV9mbHVzaF90YWJsZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtKQo+ICt7Cj4gKyAgICBzdHJ1Y3Qg cGFnZV9pbmZvICp0b3AsICpwZzsKPiArICAgIG1mbl90IG1mbjsKPiArICAgIHVuc2lnbmVkIGlu dCBpOwo+ICsKPiArICAgIC8qIENoZWNrIHdoZXRoZXIgdGhlIHAybSB0YWJsZSBoYXMgYWxyZWFk eSBiZWVuIGZsdXNoZWQgYmVmb3JlLiAqLwo+ICsgICAgaWYgKCBwMm0tPnJvb3QgPT0gTlVMTCkK PiArICAgICAgICByZXR1cm47Cj4gKwo+ICsgICAgc3Bpbl9sb2NrKCZwMm0tPmxvY2spOwo+ICsK PiArICAgIC8qCj4gKyAgICAgKiAiSG9zdCIgcDJtIHRhYmxlcyBjYW4gaGF2ZSBzaGFyZWQgZW50 cmllcyAmYyB0aGF0IG5lZWQgYSBiaXQgbW9yZSBjYXJlCj4gKyAgICAgKiB3aGVuIGRpc2NhcmRp bmcgdGhlbQo+ICsgICAgICovCj4gKyAgICBBU1NFUlQoIXAybV9pc19ob3N0cDJtKHAybSkpOwo+ ICsKPiArICAgIC8qIFphcCB0aGUgdG9wIGxldmVsIG9mIHRoZSB0cmllICovCj4gKyAgICB0b3Ag PSBwMm0tPnJvb3Q7Cj4gKwo+ICsgICAgLyogQ2xlYXIgYWxsIGNvbmNhdGVuYXRlZCBmaXJzdCBs ZXZlbCBwYWdlcyAqLwo+ICsgICAgZm9yICggaSA9IDA7IGkgPCBQMk1fUk9PVF9QQUdFUzsgaSsr ICkKPiArICAgIHsKPiArICAgICAgICBtZm4gPSBfbWZuKHBhZ2VfdG9fbWZuKHRvcCArIGkpKTsK PiArICAgICAgICBjbGVhcl9kb21haW5fcGFnZShtZm4pOwo+ICsgICAgfQo+ICsKPiArICAgIC8q IEZyZWUgdGhlIHJlc3Qgb2YgdGhlIHRyaWUgcGFnZXMgYmFjayB0byB0aGUgcGFnaW5nIHBvb2wg Ki8KPiArICAgIHdoaWxlICggKHBnID0gcGFnZV9saXN0X3JlbW92ZV9oZWFkKCZwMm0tPnBhZ2Vz KSkgKQo+ICsgICAgICAgIGlmICggcGcgIT0gdG9wICApCj4gKyAgICAgICAgewo+ICsgICAgICAg ICAgICAvKgo+ICsgICAgICAgICAgICAgKiBCZWZvcmUgZnJlZWluZyB0aGUgaW5kaXZpZHVhbCBw YWdlcywgd2UgY2xlYXIgdGhlbSB0byBwcmV2ZW50Cj4gKyAgICAgICAgICAgICAqIHJldXNpbmcg b2xkIHRhYmxlIGVudHJpZXMgaW4gZnV0dXJlIHAybSBhbGxvY2F0aW9ucy4KPiArICAgICAgICAg ICAgICovCj4gKyAgICAgICAgICAgIG1mbiA9IF9tZm4ocGFnZV90b19tZm4ocGcpKTsKPiArICAg ICAgICAgICAgY2xlYXJfZG9tYWluX3BhZ2UobWZuKTsKPiArICAgICAgICAgICAgZnJlZV9kb21o ZWFwX3BhZ2UocGcpOwo+ICsgICAgICAgIH0KCkF0IHRoaXMgcG9pbnQsIHdlIHByZXZlbnQgb25s eSB0aGUgZmlyc3Qgcm9vdCBsZXZlbCBwYWdlIGZyb20gYmVpbmcKZnJlZWQuIEluIGNhc2UgdGhl cmUgYXJlIG11bHRpcGxlIGNvbnNlY3V0aXZlIGZpcnN0IGxldmVsIHBhZ2VzLCBvbmUgb2YKdGhl bSB3aWxsIGJlIGZyZWVkIGluIHRoZSB1cHBlciBsb29wIChhbmQgcG90ZW50aWFsbHkgY3Jhc2gg dGhlIGd1ZXN0IGlmCnRoZSB0YWJsZSBpcyByZXVzZWQgYXQgYSBsYXRlciBwb2ludCBpbiB0aW1l KS4gSG93ZXZlciwgdGVzdGluZyBmb3IKZXZlcnkgY29uY2F0ZW5hdGVkIHBhZ2UgaW4gdGhlIGlm IGNsYXVzZSBvZiB0aGUgd2hpbGUgbG9vcCB3b3VsZCBmdXJ0aGVyCmRlY3JlYXNlIHRoZSBmbHVz aGluZyBwZXJmb3JtYW5jZS4gVGh1cywgbXkgcXVlc3Rpb24gaXMsIHdoZXRoZXIgdGhlcmUKaXMg YSBnb29kIHdheSB0byBzb2x2ZSB0aGlzIGlzc3VlPwoKPiArCj4gKyAgICBwYWdlX2xpc3RfYWRk KHRvcCwgJnAybS0+cGFnZXMpOwo+ICsKPiArICAgIC8qIEludmFsaWRhdGUgVlRUQlIgKi8KPiAr ICAgIHAybS0+dnR0YnIudnR0YnIgPSAwOwo+ICsgICAgcDJtLT52dHRici52dHRicl9iYWRkciA9 IElOVkFMSURfTUZOOwo+ICsKPiArICAgIHNwaW5fdW5sb2NrKCZwMm0tPmxvY2spOwo+ICt9Cj4g Kwo+ICt2b2lkIHAybV9mbHVzaF9hbHRwMm0oc3RydWN0IGRvbWFpbiAqZCkKPiArewo+ICsgICAg dW5zaWduZWQgaW50IGk7Cj4gKwo+ICsgICAgYWx0cDJtX2xvY2soZCk7Cj4gKwo+ICsgICAgZm9y ICggaSA9IDA7IGkgPCBNQVhfQUxUUDJNOyBpKysgKQo+ICsgICAgewo+ICsgICAgICAgIHAybV9m bHVzaF90YWJsZShkLT5hcmNoLmFsdHAybV9wMm1baV0pOwo+ICsgICAgICAgIGZsdXNoX3RsYigp Owo+ICsgICAgICAgIGQtPmFyY2guYWx0cDJtX3Z0dGJyW2ldID0gSU5WQUxJRF9NRk47Cj4gKyAg ICB9Cj4gKwo+ICsgICAgYWx0cDJtX3VubG9jayhkKTsKPiArfQo+ICsKPiAgLyoKPiAgICogTG9j YWwgdmFyaWFibGVzOgo+ICAgKiBtb2RlOiBDCj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2Fz bS1hcm0vcDJtLmggYi94ZW4vaW5jbHVkZS9hc20tYXJtL3AybS5oCj4gaW5kZXggOGVlNzhlMC4u NTFkNzg0ZiAxMDA2NDQKPiAtLS0gYS94ZW4vaW5jbHVkZS9hc20tYXJtL3AybS5oCj4gKysrIGIv eGVuL2luY2x1ZGUvYXNtLWFybS9wMm0uaAo+IEBAIC0xMzIsMTAgKzEzMiw3IEBAIHZvaWQgcDJt X2FsdHAybV9jaGVjayhzdHJ1Y3QgdmNwdSAqdiwgdWludDE2X3QgaWR4KQo+ICBzdHJ1Y3QgcDJt X2RvbWFpbiAqcDJtX2dldF9hbHRwMm0oc3RydWN0IHZjcHUgKnYpOwo+ICAKPiAgLyogRmx1c2gg YWxsIHRoZSBhbHRlcm5hdGUgcDJtJ3MgZm9yIGEgZG9tYWluICovCj4gLXN0YXRpYyBpbmxpbmUg dm9pZCBwMm1fZmx1c2hfYWx0cDJtKHN0cnVjdCBkb21haW4gKmQpCj4gLXsKPiAtICAgIC8qIE5v dCBzdXBwb3J0ZWQgb24gQVJNLiAqLwo+IC19Cj4gK3ZvaWQgcDJtX2ZsdXNoX2FsdHAybShzdHJ1 Y3QgZG9tYWluICpkKTsKPiAgCj4gIC8qIE1ha2UgYSBzcGVjaWZpYyBhbHRlcm5hdGUgcDJtIHZh bGlkICovCj4gIGludCBwMm1faW5pdF9hbHRwMm1fYnlfaWQoc3RydWN0IGRvbWFpbiAqZCwgdW5z aWduZWQgaW50IGlkeCk7Cj4gQEAgLTI4OSw2ICsyODYsMTYgQEAgc3RhdGljIGlubGluZSBpbnQg Z2V0X3BhZ2VfYW5kX3R5cGUoc3RydWN0IHBhZ2VfaW5mbyAqcGFnZSwKPiAgLyogZ2V0IGhvc3Qg cDJtIHRhYmxlICovCj4gICNkZWZpbmUgcDJtX2dldF9ob3N0cDJtKGQpICgmKGQpLT5hcmNoLnAy bSkKPiAgCj4gK3N0YXRpYyBpbmxpbmUgYm9vbF90IHAybV9pc19ob3N0cDJtKGNvbnN0IHN0cnVj dCBwMm1fZG9tYWluICpwMm0pCj4gK3sKPiArICAgIHJldHVybiBwMm0tPnAybV9jbGFzcyA9PSBw Mm1faG9zdDsKPiArfQo+ICsKPiArc3RhdGljIGlubGluZSBib29sX3QgcDJtX2lzX2FsdHAybShj b25zdCBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtKQo+ICt7Cj4gKyAgICByZXR1cm4gcDJtLT5wMm1f Y2xhc3MgPT0gcDJtX2FsdGVybmF0ZTsKPiArfQo+ICsKPiAgLyogdm1fZXZlbnQgYW5kIG1lbV9h Y2Nlc3MgYXJlIHN1cHBvcnRlZCBvbiBhbnkgQVJNIGd1ZXN0ICovCj4gIHN0YXRpYyBpbmxpbmUg Ym9vbF90IHAybV9tZW1fYWNjZXNzX3Nhbml0eV9jaGVjayhzdHJ1Y3QgZG9tYWluICpkKQo+ICB7 Cj4gCgpDaGVlcnMsClNlcmdlagoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5v cmcKaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==