From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: [PATCH for-4.12 v2 15/17] xen/arm: p2m: Add support for preemption in p2m_cache_flush_range Date: Tue, 4 Dec 2018 20:26:49 +0000 Message-ID: <20181204202651.8836-16-julien.grall@arm.com> References: <20181204202651.8836-1-julien.grall@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gUHI6-0008E9-GU for xen-devel@lists.xenproject.org; Tue, 04 Dec 2018 20:27:34 +0000 In-Reply-To: <20181204202651.8836-1-julien.grall@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Julien Grall , sstabellini@kernel.org List-Id: xen-devel@lists.xenproject.org cDJtX2NhY2hlX2ZsdXNoX3JhbmdlIGRvZXMgbm90IHlldCBzdXBwb3J0IHByZWVtcHRpb24sIHRo aXMgbWF5IGJlIGFuCmlzc3VlIGFzIGNsZWFuaW5nIHRoZSBjYWNoZSBjYW4gdGFrZSBhIGxvbmcg dGltZS4gV2hpbGUgdGhlIGN1cnJlbnQKY2FsbGVyIChYRU5fRE9NQ1RMX2NhY2hlZmx1c2gpIGRv ZXMgbm90IHN0cmljbHkgcmVxdWlyZSBwcmVlbXB0aW9uLCB0aGlzCndpbGwgYmUgbmVjZXNzYXJ5 IGZvciBuZXcgY2FsbGVyIGluIGEgZm9sbG93LXVwIHBhdGNoLgoKVGhlIHByZWVtcHRpb24gaW1w bGVtZW50ZWQgaXMgcXVpdGUgc2ltcGxlLCBhIGNvdW50ZXIgaXMgaW5jcmVtZW50ZWQgYnk6CiAg ICAtIDEgb24gcmVnaW9uIHNraXBwZWQKICAgIC0gMTAgZm9yIGVhY2ggcGFnZSByZXF1aXJpbmcg YSBmbHVzaAoKV2hlbiB0aGUgY291bnRlciByZWFjaCA1MTIgb3IgYWJvdmUsIHdlIHdpbGwgY2hl Y2sgaWYgcHJlZW1wdGlvbiBpcwpuZWVkZWQuIElmIG5vdCwgdGhlIGNvdW50ZXIgd2lsbCBiZSBy ZXNldCB0byAwLiBJZiB5ZXMsIHRoZSBmdW5jdGlvbgp3aWxsIHN0b3AsIHVwZGF0ZSBzdGFydCAo dG8gYWxsb3cgcmVzdW1pbmcgbGF0ZXIgb24pIGFuZCByZXR1cm4KLUVSRVNUQVJULiBUaGlzIGFs bG93cyB0aGUgY2FsbGVyIHRvIGRlY2lkZSBob3cgdGhlIHByZWVtcHRpb24gd2lsbCBiZQpkb25l LgoKRm9yIG5vdywgWEVOX0RPTUNUTF9jYWNoZWZsdXNoIHdpbGwgY29udGludWUgdG8gaWdub3Jl IHRoZSBwcmVlbXB0aW9uLgoKU2lnbmVkLW9mZi1ieTogSnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3Jh bGxAYXJtLmNvbT4KCi0tLQogICAgQ2hhbmdlcyBpbiB2MjoKICAgICAgICAtIFBhdGNoIGFkZGVk Ci0tLQogeGVuL2FyY2gvYXJtL2RvbWN0bC5jICAgICB8ICA4ICsrKysrKystCiB4ZW4vYXJjaC9h cm0vcDJtLmMgICAgICAgIHwgMzUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0K IHhlbi9pbmNsdWRlL2FzbS1hcm0vcDJtLmggfCAgNCArKystCiAzIGZpbGVzIGNoYW5nZWQsIDQy IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJt L2RvbWN0bC5jIGIveGVuL2FyY2gvYXJtL2RvbWN0bC5jCmluZGV4IDIwNjkxNTI4YTYuLjlkYTg4 YjhjNjQgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9kb21jdGwuYworKysgYi94ZW4vYXJjaC9h cm0vZG9tY3RsLmMKQEAgLTU0LDYgKzU0LDcgQEAgbG9uZyBhcmNoX2RvX2RvbWN0bChzdHJ1Y3Qg eGVuX2RvbWN0bCAqZG9tY3RsLCBzdHJ1Y3QgZG9tYWluICpkLAogICAgIHsKICAgICAgICAgZ2Zu X3QgcyA9IF9nZm4oZG9tY3RsLT51LmNhY2hlZmx1c2guc3RhcnRfcGZuKTsKICAgICAgICAgZ2Zu X3QgZSA9IGdmbl9hZGQocywgZG9tY3RsLT51LmNhY2hlZmx1c2gubnJfcGZucyk7CisgICAgICAg IGludCByYzsKIAogICAgICAgICBpZiAoIGRvbWN0bC0+dS5jYWNoZWZsdXNoLm5yX3BmbnMgPiAo MVU8PE1BWF9PUkRFUikgKQogICAgICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CkBAIC02MSw3ICs2 MiwxMiBAQCBsb25nIGFyY2hfZG9fZG9tY3RsKHN0cnVjdCB4ZW5fZG9tY3RsICpkb21jdGwsIHN0 cnVjdCBkb21haW4gKmQsCiAgICAgICAgIGlmICggZ2ZuX3goZSkgPCBnZm5feChzKSApCiAgICAg ICAgICAgICByZXR1cm4gLUVJTlZBTDsKIAotICAgICAgICByZXR1cm4gcDJtX2NhY2hlX2ZsdXNo X3JhbmdlKGQsIHMsIGUpOworICAgICAgICAvKiBYWFg6IEhhbmRsZSBwcmVlbXB0aW9uICovCisg ICAgICAgIGRvCisgICAgICAgICAgICByYyA9IHAybV9jYWNoZV9mbHVzaF9yYW5nZShkLCAmcywg ZSk7CisgICAgICAgIHdoaWxlICggcmMgPT0gLUVSRVNUQVJUICk7CisKKyAgICAgICAgcmV0dXJu IHJjOwogICAgIH0KICAgICBjYXNlIFhFTl9ET01DVExfYmluZF9wdF9pcnE6CiAgICAgewpkaWZm IC0tZ2l0IGEveGVuL2FyY2gvYXJtL3AybS5jIGIveGVuL2FyY2gvYXJtL3AybS5jCmluZGV4IGRi MjJiNTNiZmQuLmNhOWYwZDllYmUgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9wMm0uYworKysg Yi94ZW4vYXJjaC9hcm0vcDJtLmMKQEAgLTE1MjQsMTMgKzE1MjQsMTcgQEAgaW50IHJlbGlucXVp c2hfcDJtX21hcHBpbmcoc3RydWN0IGRvbWFpbiAqZCkKICAgICByZXR1cm4gcmM7CiB9CiAKLWlu dCBwMm1fY2FjaGVfZmx1c2hfcmFuZ2Uoc3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3Qgc3RhcnQsIGdm bl90IGVuZCkKK2ludCBwMm1fY2FjaGVfZmx1c2hfcmFuZ2Uoc3RydWN0IGRvbWFpbiAqZCwgZ2Zu X3QgKnBzdGFydCwgZ2ZuX3QgZW5kKQogewogICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm0gPSBw Mm1fZ2V0X2hvc3RwMm0oZCk7CiAgICAgZ2ZuX3QgbmV4dF9ibG9ja19nZm47CisgICAgZ2ZuX3Qg c3RhcnQgPSAqcHN0YXJ0OwogICAgIG1mbl90IG1mbiA9IElOVkFMSURfTUZOOwogICAgIHAybV90 eXBlX3QgdDsKICAgICB1bnNpZ25lZCBpbnQgb3JkZXI7CisgICAgaW50IHJjID0gMDsKKyAgICAv KiBDb3VudGVyIGZvciBwcmVlbXB0aW9uICovCisgICAgdW5zaWduZWQgbG9uZyBjb3VudCA9IDA7 CiAKICAgICAvKgogICAgICAqIFRoZSBvcGVyYXRpb24gY2FjaGUgZmx1c2ggd2lsbCBpbnZhbGlk YXRlIHRoZSBSQU0gYXNzaWduZWQgdG8gdGhlCkBAIC0xNTQ3LDYgKzE1NTEsMjUgQEAgaW50IHAy bV9jYWNoZV9mbHVzaF9yYW5nZShzdHJ1Y3QgZG9tYWluICpkLCBnZm5fdCBzdGFydCwgZ2ZuX3Qg ZW5kKQogCiAgICAgd2hpbGUgKCBnZm5feChzdGFydCkgPCBnZm5feChlbmQpICkKICAgICB7Cisg ICAgICAgLyoKKyAgICAgICAgICogQ2xlYW5pbmcgdGhlIGNhY2hlIGZvciB0aGUgUDJNIG1heSB0 YWtlIGEgbG9uZyB0aW1lLiBTbyB3ZQorICAgICAgICAgKiBuZWVkIHRvIGJlIGFibGUgdG8gcHJl ZW1wdC4gV2Ugd2lsbCBhcmJpdHJhcmlseSBwcmVlbXB0IGV2ZXJ5CisgICAgICAgICAqIHRpbWUg Y291bnQgcmVhY2ggNTEyIG9yIGFib3ZlLgorICAgICAgICAgKgorICAgICAgICAgKiBUaGUgY291 bnQgd2lsbCBiZSBpbmNyZW1lbnRlZCBieToKKyAgICAgICAgICogIC0gMSBvbiByZWdpb24gc2tp cHBlZAorICAgICAgICAgKiAgLSAxMCBmb3IgZWFjaCBwYWdlIHJlcXVpcmluZyBhIGZsdXNoCisg ICAgICAgICAqLworICAgICAgICBpZiAoIGNvdW50ID49IDUxMiApCisgICAgICAgIHsKKyAgICAg ICAgICAgIGlmICggc29mdGlycV9wZW5kaW5nKHNtcF9wcm9jZXNzb3JfaWQoKSkgKQorICAgICAg ICAgICAgeworICAgICAgICAgICAgICAgIHJjID0gLUVSRVNUQVJUOworICAgICAgICAgICAgICAg IGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICAgICAgY291bnQgPSAwOworICAgICAgICB9 CisKICAgICAgICAgLyoKICAgICAgICAgICogV2Ugd2FudCB0byBmbHVzaCBwYWdlIGJ5IHBhZ2Ug YXM6CiAgICAgICAgICAqICAtIGl0IG1heSBub3QgYmUgcG9zc2libGUgdG8gbWFwIHRoZSBmdWxs IGJsb2NrIChjYW4gYmUgdXAgdG8gMUdCKQpAQCAtMTU3MywyMiArMTU5NiwyOCBAQCBpbnQgcDJt X2NhY2hlX2ZsdXNoX3JhbmdlKHN0cnVjdCBkb21haW4gKmQsIGdmbl90IHN0YXJ0LCBnZm5fdCBl bmQpCiAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgIGlmICggbWZuX2VxKG1mbiwgSU5WQUxJ RF9NRk4pIHx8ICFwMm1faXNfYW55X3JhbSh0KSApCiAgICAgICAgICAgICB7CisgICAgICAgICAg ICAgICAgY291bnQrKzsKICAgICAgICAgICAgICAgICBzdGFydCA9IG5leHRfYmxvY2tfZ2ZuOwog ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAKKyAg ICAgICAgY291bnQgKz0gMTA7CisKICAgICAgICAgZmx1c2hfcGFnZV90b19yYW0obWZuX3gobWZu KSwgZmFsc2UpOwogCiAgICAgICAgIHN0YXJ0ID0gZ2ZuX2FkZChzdGFydCwgMSk7CiAgICAgICAg IG1mbiA9IG1mbl9hZGQobWZuLCAxKTsKICAgICB9CiAKLSAgICBpbnZhbGlkYXRlX2ljYWNoZSgp OworICAgIGlmICggcmMgIT0gLUVSRVNUQVJUICkKKyAgICAgICAgaW52YWxpZGF0ZV9pY2FjaGUo KTsKIAogICAgIHAybV9yZWFkX3VubG9jayhwMm0pOwogCi0gICAgcmV0dXJuIDA7CisgICAgKnBz dGFydCA9IHN0YXJ0OworCisgICAgcmV0dXJuIHJjOwogfQogCiBtZm5fdCBnZm5fdG9fbWZuKHN0 cnVjdCBkb21haW4gKmQsIGdmbl90IGdmbikKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS1h cm0vcDJtLmggYi94ZW4vaW5jbHVkZS9hc20tYXJtL3AybS5oCmluZGV4IDdjMWQ5MzBiMWQuLmE2 MzNlMjdjYzkgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vcDJtLmgKKysrIGIveGVu L2luY2x1ZGUvYXNtLWFybS9wMm0uaApAQCAtMjMyLDggKzIzMiwxMCBAQCBib29sIHAybV9yZXNv bHZlX3RyYW5zbGF0aW9uX2ZhdWx0KHN0cnVjdCBkb21haW4gKmQsIGdmbl90IGdmbik7CiAvKgog ICogQ2xlYW4gJiBpbnZhbGlkYXRlIGNhY2hlcyBjb3JyZXNwb25kaW5nIHRvIGEgcmVnaW9uIFtz dGFydCxlbmQpIG9mIGd1ZXN0CiAgKiBhZGRyZXNzIHNwYWNlLgorICoKKyAqIHN0YXJ0IHdpbGwg Z2V0IHVwZGF0ZWQgaWYgdGhlIGZ1bmN0aW9uIGlzIHByZWVtcHRlZC4KICAqLwotaW50IHAybV9j YWNoZV9mbHVzaF9yYW5nZShzdHJ1Y3QgZG9tYWluICpkLCBnZm5fdCBzdGFydCwgZ2ZuX3QgZW5k KTsKK2ludCBwMm1fY2FjaGVfZmx1c2hfcmFuZ2Uoc3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3QgKnBz dGFydCwgZ2ZuX3QgZW5kKTsKIAogLyoKICAqIE1hcCBhIHJlZ2lvbiBpbiB0aGUgZ3Vlc3QgcDJt IHdpdGggYSBzcGVjaWZpYyBwMm0gdHlwZS4KLS0gCjIuMTEuMAoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVu LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcv bWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=