From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: [PATCH 3/3] xen/arm: p2m: Perform local TLB invalidation on vCPU migration Date: Wed, 8 Mar 2017 18:06:02 +0000 Message-ID: <20170308180602.24430-4-julien.grall@arm.com> References: <20170308180602.24430-1-julien.grall@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170308180602.24430-1-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: andre.przywara@arm.com, Julien Grall , sstabellini@kernel.org, punit.agrawal@arm.com List-Id: xen-devel@lists.xenproject.org VGhlIEFSTSBhcmNoaXRlY3R1cmUgYWxsb3dzIGFuIE9TIHRvIGhhdmUgcGVyLUNQVSBwYWdlIHRh YmxlcywgYXMgaXQKZ3VhcmFudGVlcyB0aGF0IFRMQnMgbmV2ZXIgbWlncmF0ZSBmcm9tIG9uZSBD UFUgdG8gYW5vdGhlci4KClRoaXMgd29ya3MgZmluZSB1bnRpbCB0aGlzIGlzIGRvbmUgaW4gYSBn dWVzdC4gQ29uc2lkZXIgdGhlIGZvbGxvd2luZwpzY2VuYXJpbzoKICAgIC0gdmNwdS0wIG1hcHMg UCB0byBWCiAgICAtIHZwY3UtMSBtYXBzIFAnIHRvIFYKCklmIHJ1biBvbiB0aGUgc2FtZSBwaHlz aWNhbCBDUFUsIHZjcHUtMSBjYW4gaGl0IGluIFRMQnMgZ2VuZXJhdGVkIGJ5CnZjcHUtMCBhY2Nl c3NlcywgYW5kIGFjY2VzcyB0aGUgd3JvbmcgcGh5c2ljYWwgcGFnZS4KClRoZSBzb2x1dGlvbiB0 byB0aGlzIGlzIHRvIGtlZXAgYSBwZXItcDJtIG1hcCBvZiB3aGljaCB2Q1BVIHJhbiB0aGUgbGFz dApvbiBlYWNoIGdpdmVuIHBDUFUgYW5kIGludmFsaWRhdGUgbG9jYWwgVExCcyBpZiB0d28gdlBD VXMgZnJvbSB0aGUgc2FtZQpWTSBydW4gb24gdGhlIHNhbWUgQ1BVLgoKVW5mb3J0dW5hdGVseSBp dCBpcyBub3QgcG9zc2libGUgdG8gYWxsb2NhdGUgcGVyLWNwdSB2YXJpYWJsZSBvbiB0aGUKZmx5 LiBTbyBmb3Igbm93IHRoZSBzaXplIG9mIHRoZSBhcnJheSBpcyBOUl9DUFVTLCB0aGlzIGlzIGZp bmUgYmVjYXVzZQp3ZSBzdGlsbCBoYXZlIHNwYWNlIGluIHRoZSBzdHJ1Y3R1cmUgZG9tYWluLiBX ZSBtYXkgd2FudCB0byBhZGQgYW4KaGVscGVyIHRvIGFsbG9jYXRlIHBlci1jcHUgdmFyaWFibGUg aW4gdGhlIGZ1dHVyZS4KClNpZ25lZC1vZmYtYnk6IEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxs QGFybS5jb20+CgotLS0KICAgIFRoaXMgcGF0Y2ggaXMgYSBjYW5kaWRhdGUgZm9yIGJhY2twb3J0 IHRvIFhlbiA0LjgsIDQuNyBhbmQgNC42LgotLS0KIHhlbi9hcmNoL2FybS9wMm0uYyAgICAgICAg fCAyNCArKysrKysrKysrKysrKysrKysrKysrKysKIHhlbi9pbmNsdWRlL2FzbS1hcm0vcDJtLmgg fCAgMyArKysKIDIgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBh L3hlbi9hcmNoL2FybS9wMm0uYyBiL3hlbi9hcmNoL2FybS9wMm0uYwppbmRleCAxZmM2Y2EzYmIy Li42MjYzNzYwOTBkIDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vcDJtLmMKKysrIGIveGVuL2Fy Y2gvYXJtL3AybS5jCkBAIC0xMzAsNiArMTMwLDcgQEAgdm9pZCBwMm1fcmVzdG9yZV9zdGF0ZShz dHJ1Y3QgdmNwdSAqbikKIHsKICAgICByZWdpc3Rlcl90IGhjcjsKICAgICBzdHJ1Y3QgcDJtX2Rv bWFpbiAqcDJtID0gJm4tPmRvbWFpbi0+YXJjaC5wMm07CisgICAgdWludDhfdCAqbGFzdF92Y3B1 X3JhbjsKIAogICAgIGlmICggaXNfaWRsZV92Y3B1KG4pICkKICAgICAgICAgcmV0dXJuOwpAQCAt MTQ5LDYgKzE1MCwxNyBAQCB2b2lkIHAybV9yZXN0b3JlX3N0YXRlKHN0cnVjdCB2Y3B1ICpuKQog CiAgICAgV1JJVEVfU1lTUkVHKGhjciwgSENSX0VMMik7CiAgICAgaXNiKCk7CisKKyAgICBsYXN0 X3ZjcHVfcmFuID0gJnAybS0+bGFzdF92Y3B1X3JhbltzbXBfcHJvY2Vzc29yX2lkKCldOworCisg ICAgLyoKKyAgICAgKiBGbHVzaCBsb2NhbCBUTEIgZm9yIHRoZSBkb21haW4gdG8gcHJldmVudCB3 cm9uZyBUTEIgdHJhbnNsYXRpb24KKyAgICAgKiB3aGVuIHJ1bm5pbmcgbXVsdGlwbGUgdkNQVSBv ZiB0aGUgc2FtZSBkb21haW4gb24gYSBzaW5nbGUgcENQVS4KKyAgICAgKi8KKyAgICBpZiAoICps YXN0X3ZjcHVfcmFuICE9IElOVkFMSURfVkNQVV9JRCAmJiAqbGFzdF92Y3B1X3JhbiAhPSBuLT52 Y3B1X2lkICkKKyAgICAgICAgZmx1c2hfdGxiX2xvY2FsKCk7CisKKyAgICAqbGFzdF92Y3B1X3Jh biA9IG4tPnZjcHVfaWQ7CiB9CiAKIHN0YXRpYyB2b2lkIHAybV9mbHVzaF90bGIoc3RydWN0IHAy bV9kb21haW4gKnAybSkKQEAgLTEyNDcsNiArMTI1OSw3IEBAIGludCBwMm1faW5pdChzdHJ1Y3Qg ZG9tYWluICpkKQogewogICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm0gPSAmZC0+YXJjaC5wMm07 CiAgICAgaW50IHJjID0gMDsKKyAgICB1bnNpZ25lZCBpbnQgY3B1OwogCiAgICAgcndsb2NrX2lu aXQoJnAybS0+bG9jayk7CiAgICAgSU5JVF9QQUdFX0xJU1RfSEVBRCgmcDJtLT5wYWdlcyk7CkBA IC0xMjc1LDYgKzEyODgsMTcgQEAgaW50IHAybV9pbml0KHN0cnVjdCBkb21haW4gKmQpCiAKICAg ICByYyA9IHAybV9hbGxvY190YWJsZShkKTsKIAorICAgIC8qCisgICAgICogTWFrZSBzdXJlIHRo YXQgdGhlIHR5cGUgY2hvc2VuIHRvIGlzIGFibGUgdG8gc3RvcmUgdGhlIGFuIHZDUFUgSUQKKyAg ICAgKiBiZXR3ZWVuIDAgYW5kIHRoZSBtYXhpbXVtIG9mIHZpcnR1YWwgQ1BVUyBzdXBwb3J0ZWQg YXMgbG9uZyBhcworICAgICAqIHRoZSBJTlZBTElEX1ZDUFVfSUQuCisgICAgICovCisgICAgQlVJ TERfQlVHX09OKCgxIDw8IChzaXplb2YocDJtLT5sYXN0X3ZjcHVfcmFuWzBdKSAqIDgpKSA8IE1B WF9WSVJUX0NQVVMpOworICAgIEJVSUxEX0JVR19PTigoMSA8PCAoc2l6ZW9mKHAybS0+bGFzdF92 Y3B1X3JhblswXSkqIDgpKSA8IElOVkFMSURfVkNQVV9JRCk7CisKKyAgICBmb3JfZWFjaF9wb3Nz aWJsZV9jcHUoY3B1KQorICAgICAgIHAybS0+bGFzdF92Y3B1X3JhbltjcHVdID0gSU5WQUxJRF9W Q1BVX0lEOworCiAgICAgcmV0dXJuIHJjOwogfQogCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9h c20tYXJtL3AybS5oIGIveGVuL2luY2x1ZGUvYXNtLWFybS9wMm0uaAppbmRleCAwODk5NTIzMDg0 Li4xOGM1N2Y5MzZlIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20tYXJtL3AybS5oCisrKyBi L3hlbi9pbmNsdWRlL2FzbS1hcm0vcDJtLmgKQEAgLTk2LDYgKzk2LDkgQEAgc3RydWN0IHAybV9k b21haW4gewogCiAgICAgLyogYmFjayBwb2ludGVyIHRvIGRvbWFpbiAqLwogICAgIHN0cnVjdCBk b21haW4gKmRvbWFpbjsKKworICAgIC8qIEtlZXBpbmcgdHJhY2sgb24gd2hpY2ggQ1BVIHRoaXMg cDJtIHdhcyB1c2VkIGFuZCBmb3Igd2hpY2ggdkNQVSAqLworICAgIHVpbnQ4X3QgbGFzdF92Y3B1 X3JhbltOUl9DUFVTXTsKIH07CiAKIC8qCi0tIAoyLjExLjAKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK