From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Tyshchenko Subject: [PATCH v1 08/10] iommu: Split iommu_hwdom_init() into arch specific parts Date: Wed, 10 May 2017 17:03:12 +0300 Message-ID: <1494424994-26232-9-git-send-email-olekstysh@gmail.com> References: <1494424994-26232-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.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d8SDQ-0007AQ-AN for xen-devel@lists.xenproject.org; Wed, 10 May 2017 14:03:44 +0000 Received: by mail-wr0-f195.google.com with SMTP id v42so8710043wrc.3 for ; Wed, 10 May 2017 07:03:43 -0700 (PDT) In-Reply-To: <1494424994-26232-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: wei.liu2@citrix.com, julien.grall@arm.com, sstabellini@kernel.org, ian.jackson@eu.citrix.com, jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org RnJvbTogT2xla3NhbmRyIFR5c2hjaGVua28gPG9sZWtzYW5kcl90eXNoY2hlbmtvQGVwYW0uY29t PgoKVGhlICJyZXRyaWV2aW5nIG1hcHBpbmciIGNvZGUgaGFzIG5ldmVyIGV4ZWN1dGVkIHNpbmNl CmlvbW11X3VzZV9oYXBfcHQoZCkgYWx3YXlzIHJldHVybmVkIHRydWUgb24gQVJNIHNvIGZhci4g QnV0LCB3aXRoCmludHJvZHVjaW5nIHRoZSBub24tc2hhcmVkIElPTU1VIHBhdGNoIHNlcmllcyB3 ZSBjYW4gbm8gbG9uZ2VyIGtlZXAKdGhpcyBjb2RlIGFzIGlzIGR1ZSB0byB0aGUgbGFjayBvZiBN MlAgc3VwcG9ydC4KCkluIG9yZGVyIHRvIHJldGFpbiB0aGUgY3VycmVudCBiZWhhdmlvciBmb3Ig eDg2IHRoaXMgY29kZSB3YXMgY29tcGxldGVseQptb3ZlZCB0byB4ODYgc3BlY2lmaWMgcGFydC4K Rm9yIEFSTSB3ZSBqdXN0IG5lZWQgdG8gcG9wdWxhdGUgSU9NTVUgcGFnZSB0YWJsZSBpZiBuZWVk X2lvbW11IGZsYWcKaXMgYWxyZWFkeSBzZXQgYW5kIHRoZSBJT01NVSBpcyBub24tc2hhcmVkLgoK U28sIHRoZSBsb2dpYyBvbiBBUk0gd2FzIGNoYW5nZWQgYSBiaXQsIGJ1dCBubyBmdW5jdGlvbmFs IGNoYW5nZSBmb3IgeDg2LgoKU2lnbmVkLW9mZi1ieTogT2xla3NhbmRyIFR5c2hjaGVua28gPG9s ZWtzYW5kcl90eXNoY2hlbmtvQGVwYW0uY29tPgpDQzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1 c2UuY29tPgpDQzogSnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4KCi0tLQogICBD aGFuZ2VzIGluIFYxOgogICAgICAtIENsYXJpZnkgcGF0Y2ggZGVzY3JpcHRpb24uCi0tLQogeGVu L2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL2lvbW11LmMgfCAgNyArKysrKysrCiB4ZW4vZHJpdmVy cy9wYXNzdGhyb3VnaC9pb21tdS5jICAgICB8IDMwICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gveDg2L2lvbW11LmMgfCAzNiArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysKIHhlbi9pbmNsdWRlL3hlbi9pb21tdS5oICAgICAg ICAgICAgIHwgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAyOSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vaW9tbXUu YyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9pb21tdS5jCmluZGV4IGYxMzIwMzIuLjIx OTg3MjMgMTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9pb21tdS5jCisr KyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9pb21tdS5jCkBAIC0xOSw2ICsxOSw3IEBA CiAjaW5jbHVkZSA8eGVuL2lvbW11Lmg+CiAjaW5jbHVkZSA8eGVuL2RldmljZV90cmVlLmg+CiAj aW5jbHVkZSA8YXNtL2RldmljZS5oPgorI2luY2x1ZGUgPHhlbi9zY2hlZC5oPgogCiBzdGF0aWMg Y29uc3Qgc3RydWN0IGlvbW11X29wcyAqaW9tbXVfb3BzOwogCkBAIC01OSw2ICs2MCwxMiBAQCB2 b2lkIF9faHdkb21faW5pdCBhcmNoX2lvbW11X2NoZWNrX2F1dG90cmFuc2xhdGVkX2h3ZG9tKHN0 cnVjdCBkb21haW4gKmQpCiAgICAgcmV0dXJuOwogfQogCit2b2lkIF9faHdkb21faW5pdCBhcmNo X2lvbW11X2h3ZG9tX2luaXQoc3RydWN0IGRvbWFpbiAqZCkKK3sKKyAgICBpZiAoIG5lZWRfaW9t bXUoZCkgJiYgIWlvbW11X3VzZV9oYXBfcHQoZCkgKQorICAgICAgICBhcmNoX2lvbW11X3BvcHVs YXRlX3BhZ2VfdGFibGUoZCk7Cit9CisKIGludCBhcmNoX2lvbW11X2RvbWFpbl9pbml0KHN0cnVj dCBkb21haW4gKmQpCiB7CiAgICAgcmV0dXJuIGlvbW11X2R0X2RvbWFpbl9pbml0KGQpOwpkaWZm IC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYyBiL3hlbi9kcml2ZXJzL3Bh c3N0aHJvdWdoL2lvbW11LmMKaW5kZXggYzg1ZjdiNC4uZTY2ZWVmYiAxMDA2NDQKLS0tIGEveGVu L2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3Vn aC9pb21tdS5jCkBAIC0xNzcsMzYgKzE3Nyw4IEBAIHZvaWQgX19od2RvbV9pbml0IGlvbW11X2h3 ZG9tX2luaXQoc3RydWN0IGRvbWFpbiAqZCkKIAogICAgIHJlZ2lzdGVyX2tleWhhbmRsZXIoJ28n LCAmaW9tbXVfZHVtcF9wMm1fdGFibGUsICJkdW1wIGlvbW11IHAybSB0YWJsZSIsIDApOwogICAg IGQtPm5lZWRfaW9tbXUgPSAhIWlvbW11X2RvbTBfc3RyaWN0OwotICAgIGlmICggbmVlZF9pb21t dShkKSAmJiAhaW9tbXVfdXNlX2hhcF9wdChkKSApCi0gICAgewotICAgICAgICBzdHJ1Y3QgcGFn ZV9pbmZvICpwYWdlOwotICAgICAgICB1bnNpZ25lZCBpbnQgaSA9IDA7Ci0gICAgICAgIGludCBy YyA9IDA7Ci0KLSAgICAgICAgcGFnZV9saXN0X2Zvcl9lYWNoICggcGFnZSwgJmQtPnBhZ2VfbGlz dCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgbWZuID0gcGFnZV90b19t Zm4ocGFnZSk7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsb25nIGdmbiA9IG1mbl90b19nbWZuKGQs IG1mbik7Ci0gICAgICAgICAgICB1bnNpZ25lZCBpbnQgbWFwcGluZyA9IElPTU1VRl9yZWFkYWJs ZTsKLSAgICAgICAgICAgIGludCByZXQ7Ci0KLSAgICAgICAgICAgIGlmICggKChwYWdlLT51Lmlu dXNlLnR5cGVfaW5mbyAmIFBHVF9jb3VudF9tYXNrKSA9PSAwKSB8fAotICAgICAgICAgICAgICAg ICAoKHBhZ2UtPnUuaW51c2UudHlwZV9pbmZvICYgUEdUX3R5cGVfbWFzaykKLSAgICAgICAgICAg ICAgICAgID09IFBHVF93cml0YWJsZV9wYWdlKSApCi0gICAgICAgICAgICAgICAgbWFwcGluZyB8 PSBJT01NVUZfd3JpdGFibGU7Ci0KLSAgICAgICAgICAgIHJldCA9IGhkLT5wbGF0Zm9ybV9vcHMt Pm1hcF9wYWdlcyhkLCBnZm4sIG1mbiwgMCwgbWFwcGluZyk7Ci0gICAgICAgICAgICBpZiAoICFy YyApCi0gICAgICAgICAgICAgICAgcmMgPSByZXQ7Ci0KLSAgICAgICAgICAgIGlmICggIShpKysg JiAweGZmZmZmKSApCi0gICAgICAgICAgICAgICAgcHJvY2Vzc19wZW5kaW5nX3NvZnRpcnFzKCk7 Ci0gICAgICAgIH0KIAotICAgICAgICBpZiAoIHJjICkKLSAgICAgICAgICAgIHByaW50ayhYRU5M T0dfV0FSTklORyAiZCVkOiBJT01NVSBtYXBwaW5nIGZhaWxlZDogJWRcbiIsCi0gICAgICAgICAg ICAgICAgICAgZC0+ZG9tYWluX2lkLCByYyk7Ci0gICAgfQorICAgIGFyY2hfaW9tbXVfaHdkb21f aW5pdChkKTsKIAogICAgIHJldHVybiBoZC0+cGxhdGZvcm1fb3BzLT5od2RvbV9pbml0KGQpOwog fQpkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gveDg2L2lvbW11LmMgYi94ZW4v ZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYwppbmRleCA5NzNiNzJmLi45MDQ3MzZiIDEw MDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYworKysgYi94ZW4v ZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYwpAQCAtMTE4LDYgKzExOCw0MiBAQCB2b2lk IF9faHdkb21faW5pdCBhcmNoX2lvbW11X2NoZWNrX2F1dG90cmFuc2xhdGVkX2h3ZG9tKHN0cnVj dCBkb21haW4gKmQpCiAgICAgICAgIHBhbmljKCJQcmVzZW50bHksIGlvbW11IG11c3QgYmUgZW5h YmxlZCBmb3IgUFZIIGhhcmR3YXJlIGRvbWFpblxuIik7CiB9CiAKK3ZvaWQgX19od2RvbV9pbml0 IGFyY2hfaW9tbXVfaHdkb21faW5pdChzdHJ1Y3QgZG9tYWluICpkKQoreworICAgIGNvbnN0IHN0 cnVjdCBkb21haW5faW9tbXUgKmhkID0gZG9tX2lvbW11KGQpOworCisgICAgaWYgKCBuZWVkX2lv bW11KGQpICYmICFpb21tdV91c2VfaGFwX3B0KGQpICkKKyAgICB7CisgICAgICAgIHN0cnVjdCBw YWdlX2luZm8gKnBhZ2U7CisgICAgICAgIHVuc2lnbmVkIGludCBpID0gMDsKKyAgICAgICAgaW50 IHJjID0gMDsKKworICAgICAgICBwYWdlX2xpc3RfZm9yX2VhY2ggKCBwYWdlLCAmZC0+cGFnZV9s aXN0ICkKKyAgICAgICAgeworICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtZm4gPSBwYWdlX3Rv X21mbihwYWdlKTsKKyAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgZ2ZuID0gbWZuX3RvX2dtZm4o ZCwgbWZuKTsKKyAgICAgICAgICAgIHVuc2lnbmVkIGludCBtYXBwaW5nID0gSU9NTVVGX3JlYWRh YmxlOworICAgICAgICAgICAgaW50IHJldDsKKworICAgICAgICAgICAgaWYgKCAoKHBhZ2UtPnUu aW51c2UudHlwZV9pbmZvICYgUEdUX2NvdW50X21hc2spID09IDApIHx8CisgICAgICAgICAgICAg ICAgICgocGFnZS0+dS5pbnVzZS50eXBlX2luZm8gJiBQR1RfdHlwZV9tYXNrKQorICAgICAgICAg ICAgICAgICAgPT0gUEdUX3dyaXRhYmxlX3BhZ2UpICkKKyAgICAgICAgICAgICAgICBtYXBwaW5n IHw9IElPTU1VRl93cml0YWJsZTsKKworICAgICAgICAgICAgcmV0ID0gaGQtPnBsYXRmb3JtX29w cy0+bWFwX3BhZ2VzKGQsIGdmbiwgbWZuLCAwLCBtYXBwaW5nKTsKKyAgICAgICAgICAgIGlmICgg IXJjICkKKyAgICAgICAgICAgICAgICByYyA9IHJldDsKKworICAgICAgICAgICAgaWYgKCAhKGkr KyAmIDB4ZmZmZmYpICkKKyAgICAgICAgICAgICAgICBwcm9jZXNzX3BlbmRpbmdfc29mdGlycXMo KTsKKyAgICAgICAgfQorCisgICAgICAgIGlmICggcmMgKQorICAgICAgICAgICAgcHJpbnRrKFhF TkxPR19XQVJOSU5HICJkJWQ6IElPTU1VIG1hcHBpbmcgZmFpbGVkOiAlZFxuIiwKKyAgICAgICAg ICAgICAgICAgICBkLT5kb21haW5faWQsIHJjKTsKKyAgICB9Cit9CisKIGludCBhcmNoX2lvbW11 X2RvbWFpbl9pbml0KHN0cnVjdCBkb21haW4gKmQpCiB7CiAgICAgc3RydWN0IGRvbWFpbl9pb21t dSAqaGQgPSBkb21faW9tbXUoZCk7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4vaW9tbXUu aCBiL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oCmluZGV4IGY1OTE0ZGIuLmJlNDNiMjggMTAwNjQ0 Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oCisrKyBiL3hlbi9pbmNsdWRlL3hlbi9pb21t dS5oCkBAIC02NSw2ICs2NSw3IEBAIHZvaWQgYXJjaF9pb21tdV9kb21haW5fZGVzdHJveShzdHJ1 Y3QgZG9tYWluICpkKTsKIGludCBhcmNoX2lvbW11X2RvbWFpbl9pbml0KHN0cnVjdCBkb21haW4g KmQpOwogaW50IGFyY2hfaW9tbXVfcG9wdWxhdGVfcGFnZV90YWJsZShzdHJ1Y3QgZG9tYWluICpk KTsKIHZvaWQgYXJjaF9pb21tdV9jaGVja19hdXRvdHJhbnNsYXRlZF9od2RvbShzdHJ1Y3QgZG9t YWluICpkKTsKK3ZvaWQgYXJjaF9pb21tdV9od2RvbV9pbml0KHN0cnVjdCBkb21haW4gKmQpOwog CiBpbnQgaW9tbXVfY29uc3RydWN0KHN0cnVjdCBkb21haW4gKmQpOwogCi0tIAoyLjcuNAoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBt YWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3Jn L3hlbi1kZXZlbAo=