From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xiong Zhang Subject: [PATCH V5] x86/ioreq_server: Make p2m_finish_type_change actually work Date: Sat, 13 May 2017 08:34:48 +0800 Message-ID: <1494635688-3855-1-git-send-email-xiong.y.zhang@intel.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: 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: andrew.cooper3@citrix.com, george.dunlap@citrix.com, julien.grall@arm.com, paul.durrant@citrix.com, yu.c.zhang@linux.intel.com, zhiyuan.lv@intel.com, JBeulich@suse.com, Xiong Zhang List-Id: xen-devel@lists.xenproject.org Q29tbWl0IDZkNzc0YTk1MTY5NiAoIng4Ni9pb3JlcSBzZXJ2ZXI6IHN5bmNocm9ub3VzbHkgcmVz ZXQgb3V0c3RhbmRpbmcKcDJtX2lvcmVxX3NlcnZlciBlbnRyaWVzIHdoZW4gYW4gaW9yZXEgc2Vy dmVyIHVubWFwcyIpIGludHJvZHVjZWQKcDJtX2ZpbmlzaF90eXBlX2NoYW5nZSgpLCB3aGljaCB3 YXMgbWVhbnQgdG8gc3luY2hyb25vdXNseSBmaW5pc2ggYQpwcmV2aW91c2x5IGluaXRpYXRlZCB0 eXBlIGNoYW5nZSBvdmVyIGEgZ3BmbiByYW5nZS4gIEl0IGRpZCB0aGlzIGJ5CmNhbGxpbmcgZ2V0 X2VudHJ5KCksIGNoZWNraW5nIGlmIGl0IHdhcyB0aGUgYXBwcm9wcmlhdGUgdHlwZSwgYW5kIHRo ZW4KY2FsbGluZyBzZXRfZW50cnkoKS4KClVuZm9ydHVuYXRlbHksIGEgcHJldmlvdXMgY29tbWl0 ICgxNjc5ZTBkZjNkZjYgIng4Ni9pb3JlcSBzZXJ2ZXI6CmFzeW5jaHJvbm91c2x5IHJlc2V0IG91 dHN0YW5kaW5nIHAybV9pb3JlcV9zZXJ2ZXIgZW50cmllcyIpIG1vZGlmaWVkCmdldF9lbnRyeSgp IHRvIGFsd2F5cyByZXR1cm4gdGhlIG5ldyB0eXBlIGFmdGVyIHRoZSB0eXBlIGNoYW5nZSwgbWVh bmluZwp0aGF0IHAybV9maW5pc2hfdHlwZV9jaGFuZ2UoKSBuZXZlciBjaGFuZ2VkIGFueSBlbnRy aWVzLiAgV2hpY2ggbWVhbnMKd2hlbiBhbiBpb3JlcSBzZXJ2ZXIgd2FzIGRldGFjaGVkIGFuZCB0 aGVuIHJlLWF0dGFjaGVkIChhcyBoYXBwZW5zIGluClhlbkdUIG9uIHJlYm9vdCkgdGhlIHJlLWF0 dGFjaCBmYWlsZWQuCgpGaXggdGhpcyBieSB1c2luZyB0aGUgZXhpc3RpbmcgcDJtLXNwZWNpZmlj IHJlY2FsY3VsYXRpb24gbG9naWMgaW5zdGVhZApvZiBkb2luZyBhIHJlYWQtY2hlY2std3JpdGUg bG9vcC4KCkZpeDogJ2NvbW1pdCA2ZDc3NGE5NTE2OTYgKCJ4ODYvaW9yZXEgc2VydmVyOiBzeW5j aHJvbm91c2x5IHJlc2V0CiAgICAgIG91dHN0YW5kaW5nIHAybV9pb3JlcV9zZXJ2ZXIgZW50cmll cyB3aGVuIGFuIGlvcmVxIHNlcnZlciB1bm1hcHMiKScKClNpZ25lZC1vZmYtYnk6IFhpb25nIFpo YW5nIDx4aW9uZy55LnpoYW5nQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogWXUgWmhhbmcgPHl1 LmMuemhhbmdAbGludXguaW50ZWwuY29tPgpSZXZpZXdlZC1ieTogR2VvcmdlIER1bmxhcCA8Z2Vv cmdlLmR1bmxhcEBjdHJpeC5jb20+ClJldmlld2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hA c3VzZS5jb20+Ci0tLQp2MTogQWRkIGlvcmVxX3ByZV9yZWNhbGMgcXVlcnkgZmxhZyB0byBnZXQg dGhlIG9sZCBwMm1fdHlwZS4oSmFuKQp2MjogQWRkIHAybS0+cmVjYWxjKCkgaG9vayB0byBjaGFu Z2UgZ2ZuIHAybV90eXBlLiAoR2VvcmdlKQp2MzogTWFrZSBjb21taXQgbWVzc2FnZSBjbGVhcmVy LiAoR2VvcmdlKQogICAgS2VlcCB0aGUgbmFtZSBvZiBwMm0tc3BlY2lmaWMgcmVjYWwgZnVuY3Rp b24gdW5jaGFuZ2VkLiAoSmFuKQp2NDogTW92ZSB2ZXJzaW9uIGluZm8gYmVsb3cgUy1vLUIgYW5k IGhhbmRsZSByZXR1cm4gdmFsdWUgb2YKICAgIHAybS0+cmVjYWxjLiAoSmFuKQp2NTogRml4IGNv ZGluZyBzdHlsZS4gKEp1bGllbikKClRoZSB0YXJnZXQgb2YgdGhpcyBwYXRjaCBpcyBYZW4gNC45 LgotLS0KIHhlbi9hcmNoL3g4Ni9odm0vZG0uYyAgICAgfCAgNSArKystLQogeGVuL2FyY2gveDg2 L21tL3AybS1lcHQuYyB8ICAxICsKIHhlbi9hcmNoL3g4Ni9tbS9wMm0tcHQuYyAgfCAgMSArCiB4 ZW4vYXJjaC94ODYvbW0vcDJtLmMgICAgIHwgMzUgKysrKysrKysrKysrKysrKysrKysrKystLS0t LS0tLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmggfCAgOSArKysrKy0tLS0KIDUgZmls ZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEveGVuL2FyY2gveDg2L2h2bS9kbS5jIGIveGVuL2FyY2gveDg2L2h2bS9kbS5jCmluZGV4IGQ3 MmI3YmQuLjk5YmY2NmEgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vZG0uYworKysgYi94 ZW4vYXJjaC94ODYvaHZtL2RtLmMKQEAgLTQxMiw4ICs0MTIsOSBAQCBzdGF0aWMgaW50IGRtX29w KGRvbWlkX3QgZG9taWQsCiAgICAgICAgICAgICAgICAgICAgIGZpcnN0X2dmbiA8PSBwMm0tPm1h eF9tYXBwZWRfcGZuICkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAvKiBJdGVyYXRl IHAybSB0YWJsZSBmb3IgMjU2IGdmbnMgZWFjaCB0aW1lLiAqLwotICAgICAgICAgICAgICAgIHAy bV9maW5pc2hfdHlwZV9jaGFuZ2UoZCwgX2dmbihmaXJzdF9nZm4pLCAyNTYsCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1faW9yZXFfc2VydmVyLCBwMm1fcmFtX3J3 KTsKKyAgICAgICAgICAgICAgICByYyA9IHAybV9maW5pc2hfdHlwZV9jaGFuZ2UoZCwgX2dmbihm aXJzdF9nZm4pLCAyNTYpOworICAgICAgICAgICAgICAgIGlmICggcmMgPCAwICkKKyAgICAgICAg ICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgICAgICAgICBmaXJzdF9nZm4gKz0gMjU2Owog CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jIGIveGVuL2FyY2gveDg2L21t L3AybS1lcHQuYwppbmRleCBmMzdhMWYyLi4wOWVmYmE3IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94 ODYvbW0vcDJtLWVwdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMKQEAgLTEyMzgs NiArMTIzOCw3IEBAIGludCBlcHRfcDJtX2luaXQoc3RydWN0IHAybV9kb21haW4gKnAybSkKIAog ICAgIHAybS0+c2V0X2VudHJ5ID0gZXB0X3NldF9lbnRyeTsKICAgICBwMm0tPmdldF9lbnRyeSA9 IGVwdF9nZXRfZW50cnk7CisgICAgcDJtLT5yZWNhbGMgPSByZXNvbHZlX21pc2NvbmZpZzsKICAg ICBwMm0tPmNoYW5nZV9lbnRyeV90eXBlX2dsb2JhbCA9IGVwdF9jaGFuZ2VfZW50cnlfdHlwZV9n bG9iYWw7CiAgICAgcDJtLT5jaGFuZ2VfZW50cnlfdHlwZV9yYW5nZSA9IGVwdF9jaGFuZ2VfZW50 cnlfdHlwZV9yYW5nZTsKICAgICBwMm0tPm1lbW9yeV90eXBlX2NoYW5nZWQgPSBlcHRfbWVtb3J5 X3R5cGVfY2hhbmdlZDsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tbS9wMm0tcHQuYyBiL3hl bi9hcmNoL3g4Ni9tbS9wMm0tcHQuYwppbmRleCA1MDc5YjU5Li4yZWRkZWVlIDEwMDY0NAotLS0g YS94ZW4vYXJjaC94ODYvbW0vcDJtLXB0LmMKKysrIGIveGVuL2FyY2gveDg2L21tL3AybS1wdC5j CkBAIC0xMTUzLDYgKzExNTMsNyBAQCB2b2lkIHAybV9wdF9pbml0KHN0cnVjdCBwMm1fZG9tYWlu ICpwMm0pCiB7CiAgICAgcDJtLT5zZXRfZW50cnkgPSBwMm1fcHRfc2V0X2VudHJ5OwogICAgIHAy bS0+Z2V0X2VudHJ5ID0gcDJtX3B0X2dldF9lbnRyeTsKKyAgICBwMm0tPnJlY2FsYyA9IGRvX3Jl Y2FsYzsKICAgICBwMm0tPmNoYW5nZV9lbnRyeV90eXBlX2dsb2JhbCA9IHAybV9wdF9jaGFuZ2Vf ZW50cnlfdHlwZV9nbG9iYWw7CiAgICAgcDJtLT5jaGFuZ2VfZW50cnlfdHlwZV9yYW5nZSA9IHAy bV9wdF9jaGFuZ2VfZW50cnlfdHlwZV9yYW5nZTsKICAgICBwMm0tPndyaXRlX3AybV9lbnRyeSA9 IHBhZ2luZ193cml0ZV9wMm1fZW50cnk7CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0vcDJt LmMgYi94ZW4vYXJjaC94ODYvbW0vcDJtLmMKaW5kZXggMWQ1N2U1Yy4uMTYwMDQyMiAxMDA2NDQK LS0tIGEveGVuL2FyY2gveDg2L21tL3AybS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwpA QCAtMTAxMSwzMyArMTAxMSw0NCBAQCB2b2lkIHAybV9jaGFuZ2VfdHlwZV9yYW5nZShzdHJ1Y3Qg ZG9tYWluICpkLAogICAgIHAybV91bmxvY2socDJtKTsKIH0KIAotLyogU3luY2hyb25vdXNseSBt b2RpZnkgdGhlIHAybSB0eXBlIGZvciBhIHJhbmdlIG9mIGdmbnMgZnJvbSBvdCB0byBudC4gKi8K LXZvaWQgcDJtX2ZpbmlzaF90eXBlX2NoYW5nZShzdHJ1Y3QgZG9tYWluICpkLAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGdmbl90IGZpcnN0X2dmbiwgdW5zaWduZWQgbG9uZyBtYXhfbnIs Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX3R5cGVfdCBvdCwgcDJtX3R5cGVfdCBu dCkKKy8qCisgKiBGaW5pc2ggcDJtIHR5cGUgY2hhbmdlIGZvciBnZm5zIHdoaWNoIGFyZSBtYXJr ZWQgYXMgbmVlZF9yZWNhbGMgaW4gYSByYW5nZS4KKyAqIFJldHVybnM6IDAvMSBmb3Igc3VjY2Vz cywgbmVnYXRpdmUgZm9yIGZhaWx1cmUKKyAqLworaW50IHAybV9maW5pc2hfdHlwZV9jaGFuZ2Uo c3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGdmbl90IGZpcnN0 X2dmbiwgdW5zaWduZWQgbG9uZyBtYXhfbnIpCiB7CiAgICAgc3RydWN0IHAybV9kb21haW4gKnAy bSA9IHAybV9nZXRfaG9zdHAybShkKTsKLSAgICBwMm1fdHlwZV90IHQ7CiAgICAgdW5zaWduZWQg bG9uZyBnZm4gPSBnZm5feChmaXJzdF9nZm4pOwogICAgIHVuc2lnbmVkIGxvbmcgbGFzdF9nZm4g PSBnZm4gKyBtYXhfbnIgLSAxOwotCi0gICAgQVNTRVJUKG90ICE9IG50KTsKLSAgICBBU1NFUlQo cDJtX2lzX2NoYW5nZWFibGUob3QpICYmIHAybV9pc19jaGFuZ2VhYmxlKG50KSk7CisgICAgaW50 IHJjID0gMDsKIAogICAgIHAybV9sb2NrKHAybSk7CiAKICAgICBsYXN0X2dmbiA9IG1pbihsYXN0 X2dmbiwgcDJtLT5tYXhfbWFwcGVkX3Bmbik7CiAgICAgd2hpbGUgKCBnZm4gPD0gbGFzdF9nZm4g KQogICAgIHsKLSAgICAgICAgZ2V0X2dmbl9xdWVyeV91bmxvY2tlZChkLCBnZm4sICZ0KTsKLQot ICAgICAgICBpZiAoIHQgPT0gb3QgKQotICAgICAgICAgICAgcDJtX2NoYW5nZV90eXBlX29uZShk LCBnZm4sIHQsIG50KTsKKyAgICAgICAgcmMgPSBwMm0tPnJlY2FsYyhwMm0sIGdmbik7CisgICAg ICAgIC8qCisgICAgICAgICAqIGVwdC0+cmVjYWxjIGNvdWxkIHJldHVybiAwLzEvLUVOT01FTS4g cHQtPnJlY2FsYyBjb3VsZCByZXR1cm4KKyAgICAgICAgICogMC8tRU5PTUVNLy1FTk9FTlQsIC1F Tk9FTlQgaXNuJ3QgYW4gZXJyb3IgYXMgd2UgYXJlIGxvb3BpbmcKKyAgICAgICAgICogZ2ZuIGhl cmUuCisgICAgICAgICAqLworICAgICAgICBpZiAoIHJjID09IC1FTk9FTlQgKQorICAgICAgICAg ICAgcmMgPSAwOworICAgICAgICBlbHNlIGlmICggcmMgPCAwICkKKyAgICAgICAgeworICAgICAg ICAgICAgZ2RwcmludGsoWEVOTE9HX0VSUiwgInAybS0+cmVjYWxjIGZhaWxlZCEgRG9tJWQgZ2Zu PSVseFxuIiwKKyAgICAgICAgICAgICAgICAgICAgIGQtPmRvbWFpbl9pZCwgZ2ZuKTsKKyAgICAg ICAgICAgIGJyZWFrOworICAgICAgICB9CiAKICAgICAgICAgZ2ZuKys7CiAgICAgfQogCiAgICAg cDJtX3VubG9jayhwMm0pOworCisgICAgcmV0dXJuIHJjOwogfQogCiAvKgpkaWZmIC0tZ2l0IGEv eGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKaW5k ZXggNzU3NGE5Yi4uNDA4ZjdkYSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0u aAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCkBAIC0yNDYsNiArMjQ2LDggQEAgc3Ry dWN0IHAybV9kb21haW4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJt X3F1ZXJ5X3QgcSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk IGludCAqcGFnZV9vcmRlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJv b2xfdCAqc3ZlKTsKKyAgICBpbnQgICAgICAgICAgICAgICAgKCpyZWNhbGMpKHN0cnVjdCBwMm1f ZG9tYWluICpwMm0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBs b25nIGdmbik7CiAgICAgdm9pZCAgICAgICAgICAgICAgICgqZW5hYmxlX2hhcmR3YXJlX2xvZ19k aXJ0eSkoc3RydWN0IHAybV9kb21haW4gKnAybSk7CiAgICAgdm9pZCAgICAgICAgICAgICAgICgq ZGlzYWJsZV9oYXJkd2FyZV9sb2dfZGlydHkpKHN0cnVjdCBwMm1fZG9tYWluICpwMm0pOwogICAg IHZvaWQgICAgICAgICAgICAgICAoKmZsdXNoX2hhcmR3YXJlX2NhY2hlZF9kaXJ0eSkoc3RydWN0 IHAybV9kb21haW4gKnAybSk7CkBAIC02MDcsMTAgKzYwOSw5IEBAIGludCBwMm1fY2hhbmdlX3R5 cGVfb25lKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGxvbmcgZ2ZuLAogICAgICAgICAgICAg ICAgICAgICAgICAgcDJtX3R5cGVfdCBvdCwgcDJtX3R5cGVfdCBudCk7CiAKIC8qIFN5bmNocm9u b3VzbHkgY2hhbmdlIHRoZSBwMm0gdHlwZSBmb3IgYSByYW5nZSBvZiBnZm5zICovCi12b2lkIHAy bV9maW5pc2hfdHlwZV9jaGFuZ2Uoc3RydWN0IGRvbWFpbiAqZCwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICBnZm5fdCBmaXJzdF9nZm4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg dW5zaWduZWQgbG9uZyBtYXhfbnIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX3R5 cGVfdCBvdCwgcDJtX3R5cGVfdCBudCk7CitpbnQgcDJtX2ZpbmlzaF90eXBlX2NoYW5nZShzdHJ1 Y3QgZG9tYWluICpkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuX3QgZmlyc3RfZ2Zu LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtYXhfbnIpOwogCiAv KiBSZXBvcnQgYSBjaGFuZ2UgYWZmZWN0aW5nIG1lbW9yeSB0eXBlcy4gKi8KIHZvaWQgcDJtX21l bW9yeV90eXBlX2NoYW5nZWQoc3RydWN0IGRvbWFpbiAqZCk7Ci0tIAoyLjcuNAoKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5n IGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1k ZXZlbAo=