From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Tyshchenko Subject: [RFC PATCH 8/9] iommu: Split iommu_hwdom_init() into arch specific parts Date: Wed, 15 Mar 2017 22:05:28 +0200 Message-ID: <1489608329-7275-9-git-send-email-olekstysh@gmail.com> References: <1489608329-7275-1-git-send-email-olekstysh@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1coFBJ-00005C-4B for xen-devel@lists.xenproject.org; Wed, 15 Mar 2017 20:06:01 +0000 Received: by mail-wm0-f66.google.com with SMTP id x124so810037wmf.3 for ; Wed, 15 Mar 2017 13:05:59 -0700 (PDT) In-Reply-To: <1489608329-7275-1-git-send-email-olekstysh@gmail.com> 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: sstabellini@kernel.org, vlad.babchuk@gmail.com, al1img@gmail.com, andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com, julien.grall@arm.com, JBeulich@suse.com, joculator@gmail.com List-Id: xen-devel@lists.xenproject.org RnJvbTogT2xla3NhbmRyIFR5c2hjaGVua28gPG9sZWtzYW5kcl90eXNoY2hlbmtvQGVwYW0uY29t PgoKTG9naWMgb24gQVJNIHdhcyBjaGFuZ2VkIGEgYml0LgpUYWtpbmcgaW50byBhY2NvdW50IHRo YXQgd2UgYXJlIGhlcmUgYmVjYXVzZSB3ZSBoYXZlIHRoZSBJT01NVQp0aGF0IGRvZXNuJ3Qgc2hh cmUgcGFnZSB0YWJsZSB3aXRoIHRoZSBDUFUgYW5kIG5lZWRfaW9tbXUgZmxhZyBpcyBzZXQKanVz dCBjYWxsIGFyY2hfaW9tbXVfcG9wdWxhdGVfcGFnZV90YWJsZSgpIHRvIGFsbG93IHVuc2hhcmVk IElPTU1VCnRvIGFsbG9jYXRlIHJlc291cmNlcy4KCk5vIGZ1bmN0aW9uYWwgY2hhbmdlIGZvciB4 ODYgcGFydC4KClNpZ25lZC1vZmYtYnk6IE9sZWtzYW5kciBUeXNoY2hlbmtvIDxvbGVrc2FuZHJf dHlzaGNoZW5rb0BlcGFtLmNvbT4KLS0tCiB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vaW9t bXUuYyB8ICA3ICsrKysrKysKIHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lvbW11LmMgICAgIHwg MzAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiB4ZW4vZHJpdmVycy9wYXNzdGhyb3Vn aC94ODYvaW9tbXUuYyB8IDM2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog eGVuL2luY2x1ZGUveGVuL2lvbW11LmggICAgICAgICAgICAgfCAgMSArCiA0IGZpbGVzIGNoYW5n ZWQsIDQ1IGluc2VydGlvbnMoKyksIDI5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9k cml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9pb21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv YXJtL2lvbW11LmMKaW5kZXggZjEzMjAzMi4uMjE5ODcyMyAxMDA2NDQKLS0tIGEveGVuL2RyaXZl cnMvcGFzc3Rocm91Z2gvYXJtL2lvbW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv YXJtL2lvbW11LmMKQEAgLTE5LDYgKzE5LDcgQEAKICNpbmNsdWRlIDx4ZW4vaW9tbXUuaD4KICNp bmNsdWRlIDx4ZW4vZGV2aWNlX3RyZWUuaD4KICNpbmNsdWRlIDxhc20vZGV2aWNlLmg+CisjaW5j bHVkZSA8eGVuL3NjaGVkLmg+CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW9tbXVfb3BzICppb21t dV9vcHM7CiAKQEAgLTU5LDYgKzYwLDEyIEBAIHZvaWQgX19od2RvbV9pbml0IGFyY2hfaW9tbXVf Y2hlY2tfYXV0b3RyYW5zbGF0ZWRfaHdkb20oc3RydWN0IGRvbWFpbiAqZCkKICAgICByZXR1cm47 CiB9CiAKK3ZvaWQgX19od2RvbV9pbml0IGFyY2hfaW9tbXVfaHdkb21faW5pdChzdHJ1Y3QgZG9t YWluICpkKQoreworICAgIGlmICggbmVlZF9pb21tdShkKSAmJiAhaW9tbXVfdXNlX2hhcF9wdChk KSApCisgICAgICAgIGFyY2hfaW9tbXVfcG9wdWxhdGVfcGFnZV90YWJsZShkKTsKK30KKwogaW50 IGFyY2hfaW9tbXVfZG9tYWluX2luaXQoc3RydWN0IGRvbWFpbiAqZCkKIHsKICAgICByZXR1cm4g aW9tbXVfZHRfZG9tYWluX2luaXQoZCk7CmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhy b3VnaC9pb21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYwppbmRleCA2YzE3 YzU5Li5jZmUzYmQxIDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9pb21tdS5j CisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lvbW11LmMKQEAgLTE3NywzNiArMTc3LDgg QEAgdm9pZCBfX2h3ZG9tX2luaXQgaW9tbXVfaHdkb21faW5pdChzdHJ1Y3QgZG9tYWluICpkKQog CiAgICAgcmVnaXN0ZXJfa2V5aGFuZGxlcignbycsICZpb21tdV9kdW1wX3AybV90YWJsZSwgImR1 bXAgaW9tbXUgcDJtIHRhYmxlIiwgMCk7CiAgICAgZC0+bmVlZF9pb21tdSA9ICEhaW9tbXVfZG9t MF9zdHJpY3Q7Ci0gICAgaWYgKCBuZWVkX2lvbW11KGQpICYmICFpb21tdV91c2VfaGFwX3B0KGQp ICkKLSAgICB7Ci0gICAgICAgIHN0cnVjdCBwYWdlX2luZm8gKnBhZ2U7Ci0gICAgICAgIHVuc2ln bmVkIGludCBpID0gMDsKLSAgICAgICAgaW50IHJjID0gMDsKIAotICAgICAgICBwYWdlX2xpc3Rf Zm9yX2VhY2ggKCBwYWdlLCAmZC0+cGFnZV9saXN0ICkKLSAgICAgICAgewotICAgICAgICAgICAg dW5zaWduZWQgbG9uZyBtZm4gPSBwYWdlX3RvX21mbihwYWdlKTsKLSAgICAgICAgICAgIHVuc2ln bmVkIGxvbmcgZ2ZuID0gbWZuX3RvX2dtZm4oZCwgbWZuKTsKLSAgICAgICAgICAgIHVuc2lnbmVk IGludCBtYXBwaW5nID0gSU9NTVVGX3JlYWRhYmxlOwotICAgICAgICAgICAgaW50IHJldDsKLQot ICAgICAgICAgICAgaWYgKCAoKHBhZ2UtPnUuaW51c2UudHlwZV9pbmZvICYgUEdUX2NvdW50X21h c2spID09IDApIHx8Ci0gICAgICAgICAgICAgICAgICgocGFnZS0+dS5pbnVzZS50eXBlX2luZm8g JiBQR1RfdHlwZV9tYXNrKQotICAgICAgICAgICAgICAgICAgPT0gUEdUX3dyaXRhYmxlX3BhZ2Up ICkKLSAgICAgICAgICAgICAgICBtYXBwaW5nIHw9IElPTU1VRl93cml0YWJsZTsKLQotICAgICAg ICAgICAgcmV0ID0gaGQtPnBsYXRmb3JtX29wcy0+bWFwX3BhZ2UoZCwgZ2ZuLCBtZm4sIG1hcHBp bmcpOwotICAgICAgICAgICAgaWYgKCAhcmMgKQotICAgICAgICAgICAgICAgIHJjID0gcmV0Owot Ci0gICAgICAgICAgICBpZiAoICEoaSsrICYgMHhmZmZmZikgKQotICAgICAgICAgICAgICAgIHBy b2Nlc3NfcGVuZGluZ19zb2Z0aXJxcygpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCByYyAp Ci0gICAgICAgICAgICBwcmludGsoWEVOTE9HX1dBUk5JTkcgImQlZDogSU9NTVUgbWFwcGluZyBm YWlsZWQ6ICVkXG4iLAotICAgICAgICAgICAgICAgICAgIGQtPmRvbWFpbl9pZCwgcmMpOwotICAg IH0KKyAgICBhcmNoX2lvbW11X2h3ZG9tX2luaXQoZCk7CiAKICAgICByZXR1cm4gaGQtPnBsYXRm b3JtX29wcy0+aHdkb21faW5pdChkKTsKIH0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL3g4Ni9pb21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gveDg2L2lvbW11LmMK aW5kZXggNjljZDZjNS4uYjM1MzQ0OSAxMDA2NDQKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91 Z2gveDg2L2lvbW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gveDg2L2lvbW11LmMK QEAgLTExOCw2ICsxMTgsNDIgQEAgdm9pZCBfX2h3ZG9tX2luaXQgYXJjaF9pb21tdV9jaGVja19h dXRvdHJhbnNsYXRlZF9od2RvbShzdHJ1Y3QgZG9tYWluICpkKQogICAgICAgICBwYW5pYygiUHJl c2VudGx5LCBpb21tdSBtdXN0IGJlIGVuYWJsZWQgZm9yIFBWSCBoYXJkd2FyZSBkb21haW5cbiIp OwogfQogCit2b2lkIF9faHdkb21faW5pdCBhcmNoX2lvbW11X2h3ZG9tX2luaXQoc3RydWN0IGRv bWFpbiAqZCkKK3sKKyAgICBjb25zdCBzdHJ1Y3QgZG9tYWluX2lvbW11ICpoZCA9IGRvbV9pb21t dShkKTsKKworICAgIGlmICggbmVlZF9pb21tdShkKSAmJiAhaW9tbXVfdXNlX2hhcF9wdChkKSAp CisgICAgeworICAgICAgICBzdHJ1Y3QgcGFnZV9pbmZvICpwYWdlOworICAgICAgICB1bnNpZ25l ZCBpbnQgaSA9IDA7CisgICAgICAgIGludCByYyA9IDA7CisKKyAgICAgICAgcGFnZV9saXN0X2Zv cl9lYWNoICggcGFnZSwgJmQtPnBhZ2VfbGlzdCApCisgICAgICAgIHsKKyAgICAgICAgICAgIHVu c2lnbmVkIGxvbmcgbWZuID0gcGFnZV90b19tZm4ocGFnZSk7CisgICAgICAgICAgICB1bnNpZ25l ZCBsb25nIGdmbiA9IG1mbl90b19nbWZuKGQsIG1mbik7CisgICAgICAgICAgICB1bnNpZ25lZCBp bnQgbWFwcGluZyA9IElPTU1VRl9yZWFkYWJsZTsKKyAgICAgICAgICAgIGludCByZXQ7CisKKyAg ICAgICAgICAgIGlmICggKChwYWdlLT51LmludXNlLnR5cGVfaW5mbyAmIFBHVF9jb3VudF9tYXNr KSA9PSAwKSB8fAorICAgICAgICAgICAgICAgICAoKHBhZ2UtPnUuaW51c2UudHlwZV9pbmZvICYg UEdUX3R5cGVfbWFzaykKKyAgICAgICAgICAgICAgICAgID09IFBHVF93cml0YWJsZV9wYWdlKSAp CisgICAgICAgICAgICAgICAgbWFwcGluZyB8PSBJT01NVUZfd3JpdGFibGU7CisKKyAgICAgICAg ICAgIHJldCA9IGhkLT5wbGF0Zm9ybV9vcHMtPm1hcF9wYWdlKGQsIGdmbiwgbWZuLCBtYXBwaW5n KTsKKyAgICAgICAgICAgIGlmICggIXJjICkKKyAgICAgICAgICAgICAgICByYyA9IHJldDsKKwor ICAgICAgICAgICAgaWYgKCAhKGkrKyAmIDB4ZmZmZmYpICkKKyAgICAgICAgICAgICAgICBwcm9j ZXNzX3BlbmRpbmdfc29mdGlycXMoKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmICggcmMgKQor ICAgICAgICAgICAgcHJpbnRrKFhFTkxPR19XQVJOSU5HICJkJWQ6IElPTU1VIG1hcHBpbmcgZmFp bGVkOiAlZFxuIiwKKyAgICAgICAgICAgICAgICAgICBkLT5kb21haW5faWQsIHJjKTsKKyAgICB9 Cit9CisKIGludCBhcmNoX2lvbW11X2RvbWFpbl9pbml0KHN0cnVjdCBkb21haW4gKmQpCiB7CiAg ICAgc3RydWN0IGRvbWFpbl9pb21tdSAqaGQgPSBkb21faW9tbXUoZCk7CmRpZmYgLS1naXQgYS94 ZW4vaW5jbHVkZS94ZW4vaW9tbXUuaCBiL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oCmluZGV4IDMx NTBkN2IuLjQzY2JiODAgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oCisrKyBi L3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oCkBAIC02NSw2ICs2NSw3IEBAIHZvaWQgYXJjaF9pb21t dV9kb21haW5fZGVzdHJveShzdHJ1Y3QgZG9tYWluICpkKTsKIGludCBhcmNoX2lvbW11X2RvbWFp bl9pbml0KHN0cnVjdCBkb21haW4gKmQpOwogaW50IGFyY2hfaW9tbXVfcG9wdWxhdGVfcGFnZV90 YWJsZShzdHJ1Y3QgZG9tYWluICpkKTsKIHZvaWQgYXJjaF9pb21tdV9jaGVja19hdXRvdHJhbnNs YXRlZF9od2RvbShzdHJ1Y3QgZG9tYWluICpkKTsKK3ZvaWQgYXJjaF9pb21tdV9od2RvbV9pbml0 KHN0cnVjdCBkb21haW4gKmQpOwogCiBpbnQgaW9tbXVfY29uc3RydWN0KHN0cnVjdCBkb21haW4g KmQpOwogCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcK aHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=