From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yu Zhang Subject: Re: [PATCH v6 1/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server. Date: Fri, 9 Sep 2016 13:55:54 +0800 Message-ID: <57D24EEA.10609@linux.intel.com> References: <1472813240-11011-1-git-send-email-yu.c.zhang@linux.intel.com> <1472813240-11011-2-git-send-email-yu.c.zhang@linux.intel.com> <57CD8FB8020000780010BC6E@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <57CD8FB8020000780010BC6E@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich Cc: "Tian, Kevin" , George Dunlap , Andrew Cooper , Tim Deegan , xen-devel@lists.xen.org, Paul Durrant , "Lv, Zhiyuan" , "Nakajima, Jun" List-Id: xen-devel@lists.xenproject.org CgpPbiA5LzUvMjAxNiA5OjMxIFBNLCBKYW4gQmV1bGljaCB3cm90ZToKPj4+PiBPbiAwMi4wOS4x NiBhdCAxMjo0NywgPHl1LmMuemhhbmdAbGludXguaW50ZWwuY29tPiB3cm90ZToKPj4gQEAgLTE3 OCw4ICsxNzksMjcgQEAgc3RhdGljIGludCBodm1lbXVsX2RvX2lvKAo+PiAgICAgICAgICAgYnJl YWs7Cj4+ICAgICAgIGNhc2UgWDg2RU1VTF9VTkhBTkRMRUFCTEU6Cj4+ICAgICAgIHsKPj4gLSAg ICAgICAgc3RydWN0IGh2bV9pb3JlcV9zZXJ2ZXIgKnMgPQo+PiAtICAgICAgICAgICAgaHZtX3Nl bGVjdF9pb3JlcV9zZXJ2ZXIoY3Vyci0+ZG9tYWluLCAmcCk7Cj4+ICsgICAgICAgIHN0cnVjdCBo dm1faW9yZXFfc2VydmVyICpzID0gTlVMTDsKPj4gKyAgICAgICAgcDJtX3R5cGVfdCBwMm10ID0g cDJtX2ludmFsaWQ7Cj4+ICsKPj4gKyAgICAgICAgaWYgKCBpc19tbWlvICkKPj4gKyAgICAgICAg ewo+PiArICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBnbWZuID0gcGFkZHJfdG9fcGZuKGFkZHIp Owo+PiArCj4+ICsgICAgICAgICAgICAodm9pZCkgZ2V0X2dmbl9xdWVyeV91bmxvY2tlZChjdXJy ZCwgZ21mbiwgJnAybXQpOwo+PiArCj4+ICsgICAgICAgICAgICBpZiAoIHAybXQgPT0gcDJtX2lv cmVxX3NlcnZlciAmJiBkaXIgPT0gSU9SRVFfV1JJVEUgKQo+PiArICAgICAgICAgICAgewo+PiAr ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFnczsKPj4gKwo+PiArICAgICAgICAgICAg ICAgIHMgPSBwMm1fZ2V0X2lvcmVxX3NlcnZlcihjdXJyZCwgJmZsYWdzKTsKPj4gKyAgICAgICAg ICAgICAgICBpZiAoICEoZmxhZ3MgJiBYRU5fSFZNT1BfSU9SRVFfTUVNX0FDQ0VTU19XUklURSkg KQo+PiArICAgICAgICAgICAgICAgICAgICBzID0gTlVMTDsKPj4gKyAgICAgICAgICAgIH0KPj4g KyAgICAgICAgfQo+PiArCj4+ICsgICAgICAgIGlmICggIXMgJiYgcDJtdCAhPSBwMm1faW9yZXFf c2VydmVyICkKPj4gKyAgICAgICAgICAgIHMgPSBodm1fc2VsZWN0X2lvcmVxX3NlcnZlcihjdXJy ZCwgJnApOwo+IFdoYXQgSSByZWNhbGwgaXMgdGhhdCB3ZSBoYWQgYWdyZWVkIG9uIHAybV9pb3Jl cV9zZXJ2ZXIgcGFnZXMKPiB0byBiZSB0cmVhdGVkIGFzIG9yZGluYXJ5IFJBTSBvbmVzIGFzIGxv bmcgYXMgbm8gc2VydmVyIGNhbiBiZQo+IGZvdW5kLiBUaGUgdHlwZSBjaGVjayBoZXJlIGNvbnRy YWRpY3RzIHRoYXQuIElzIHRoZXJlIGEgcmVhc29uPwoKVGhhbmtzIEphbi4gSSBoYWQgZ2l2ZW4g bXkgZXhwbGFpbmF0aW9uIG9uIFNlcCA2J3MgcmVwbHkuIDopCklmIHMgaXMgTlVMTCBmb3IgYSBw Mm1faW9yZXFfc2VydmVyIHBhZ2UsIHdlIGRvIG5vdCB3aXNoIHRvIHRyYXZlcnNlIHRoZSAKcmFu Z2VzZXQKYnkgaHZtX3NlbGVjdF9pb3JlcV9zZXJ2ZXIoKSBhZ2FpbiwgaXQgbWF5IHByb2JhYmx5 IGJlIGEgcmVhZCBlbXVsYXRpb24gCnByb2Nlc3MKZm9yIGEgcmVhZC1tb2RpZnktd3JpdGUgc2Nl bmFyaW8uCgo+Cj4+ICtzdGF0aWMgaW50IGh2bW9wX21hcF9tZW1fdHlwZV90b19pb3JlcV9zZXJ2 ZXIoCj4+ICsgICAgWEVOX0dVRVNUX0hBTkRMRV9QQVJBTSh4ZW5faHZtX21hcF9tZW1fdHlwZV90 b19pb3JlcV9zZXJ2ZXJfdCkgdW9wKQo+PiArewo+PiArICAgIHhlbl9odm1fbWFwX21lbV90eXBl X3RvX2lvcmVxX3NlcnZlcl90IG9wOwo+PiArICAgIHN0cnVjdCBkb21haW4gKmQ7Cj4+ICsgICAg aW50IHJjOwo+PiArCj4+ICsgICAgaWYgKCBjb3B5X2Zyb21fZ3Vlc3QoJm9wLCB1b3AsIDEpICkK Pj4gKyAgICAgICAgcmV0dXJuIC1FRkFVTFQ7Cj4+ICsKPj4gKyAgICByYyA9IHJjdV9sb2NrX3Jl bW90ZV9kb21haW5fYnlfaWQob3AuZG9taWQsICZkKTsKPj4gKyAgICBpZiAoIHJjICE9IDAgKQo+ PiArICAgICAgICByZXR1cm4gcmM7Cj4+ICsKPj4gKyAgICByYyA9IC1FSU5WQUw7Cj4+ICsgICAg aWYgKCAhaXNfaHZtX2RvbWFpbihkKSApCj4+ICsgICAgICAgIGdvdG8gb3V0Owo+PiArCj4+ICsg ICAgaWYgKCBvcC5wYWQgIT0gMCApCj4+ICsgICAgICAgIGdvdG8gb3V0Owo+IFRoaXMsIEkgdGhp bmssIHNob3VsZCBiZSBkb25lIGZpcnN0IHRoaW5nIGFmdGVyIGhhdmluZyBjb3BpZWQgaW4gdGhl Cj4gc3RydWN0dXJlLiBObyBuZWVkIHRvIGxvb2t1cCBkb21haW4gb3IgYW55dGhpbmcgaWYgdGhp cyBpcyBub3QgemVyby4KClJpZ2h0LiBUaGFua3MhCgo+PiAraW50IGh2bV9tYXBfbWVtX3R5cGVf dG9faW9yZXFfc2VydmVyKHN0cnVjdCBkb21haW4gKmQsIGlvc2VydmlkX3QgaWQsCj4+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdHlwZSwgdWludDMyX3Qg ZmxhZ3MpCj4+ICt7Cj4+ICsgICAgc3RydWN0IGh2bV9pb3JlcV9zZXJ2ZXIgKnM7Cj4+ICsgICAg aW50IHJjOwo+PiArCj4+ICsgICAgLyogRm9yIG5vdywgb25seSBIVk1NRU1faW9yZXFfc2VydmVy IGlzIHN1cHBvcnRlZC4gKi8KPj4gKyAgICBpZiAoIHR5cGUgIT0gSFZNTUVNX2lvcmVxX3NlcnZl ciApCj4+ICsgICAgICAgIHJldHVybiAtRUlOVkFMOwo+PiArCj4+ICsgICAgLyogRm9yIG5vdywg b25seSB3cml0ZSBlbXVsYXRpb24gaXMgc3VwcG9ydGVkLiAqLwo+PiArICAgIGlmICggZmxhZ3Mg JiB+KFhFTl9IVk1PUF9JT1JFUV9NRU1fQUNDRVNTX1dSSVRFKSApCj4+ICsgICAgICAgIHJldHVy biAtRUlOVkFMOwo+PiArCj4+ICsgICAgZG9tYWluX3BhdXNlKGQpOwo+PiArICAgIHNwaW5fbG9j a19yZWN1cnNpdmUoJmQtPmFyY2guaHZtX2RvbWFpbi5pb3JlcV9zZXJ2ZXIubG9jayk7Cj4+ICsK Pj4gKyAgICByYyA9IC1FTk9FTlQ7Cj4+ICsgICAgbGlzdF9mb3JfZWFjaF9lbnRyeSAoIHMsCj4+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICZkLT5hcmNoLmh2bV9kb21haW4uaW9yZXFfc2Vy dmVyLmxpc3QsCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RfZW50cnkgKQo+PiAr ICAgIHsKPj4gKyAgICAgICAgaWYgKCBzID09IGQtPmFyY2guaHZtX2RvbWFpbi5kZWZhdWx0X2lv cmVxX3NlcnZlciApCj4+ICsgICAgICAgICAgICBjb250aW51ZTsKPj4gKwo+PiArICAgICAgICBp ZiAoIHMtPmlkID09IGlkICkKPj4gKyAgICAgICAgewo+PiArICAgICAgICAgICAgcmMgPSBwMm1f c2V0X2lvcmVxX3NlcnZlcihkLCBmbGFncywgcyk7Cj4+ICsgICAgICAgICAgICBicmVhazsKPj4g KyAgICAgICAgfQo+PiArICAgIH0KPj4gKwo+PiArICAgIHNwaW5fdW5sb2NrX3JlY3Vyc2l2ZSgm ZC0+YXJjaC5odm1fZG9tYWluLmlvcmVxX3NlcnZlci5sb2NrKTsKPj4gKyAgICBkb21haW5fdW5w YXVzZShkKTsKPj4gKyAgICByZXR1cm4gcmM7Cj4+ICt9Cj4gQmxhbmsgbGluZSBiZWZvcmUgZmlu YWwgcmV0dXJuIHN0YXRlbWVudCBvZiBhIGZ1bmN0aW9uIHBsZWFzZS4KCkdvdCBpdC4KCj4KPj4g K2ludCBwMm1fc2V0X2lvcmVxX3NlcnZlcihzdHJ1Y3QgZG9tYWluICpkLAo+PiArICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFncywKPj4gKyAgICAgICAgICAgICAgICAg ICAgICAgICBzdHJ1Y3QgaHZtX2lvcmVxX3NlcnZlciAqcykKPj4gK3sKPj4gKyAgICBzdHJ1Y3Qg cDJtX2RvbWFpbiAqcDJtID0gcDJtX2dldF9ob3N0cDJtKGQpOwo+PiArICAgIGludCByYzsKPj4g Kwo+PiArICAgIC8qCj4+ICsgICAgICogVXNlIGxvY2sgdG8gcHJldmVudCBjb25jdXJyZW50IHNl dHRpbmcgcmVxdWlyZW1lbnRzCj4+ICsgICAgICogZnJvbSBtdWx0aXBsZSBpb3JlcSBzZXJlcnMu Cj4+ICsgICAgICovCj4gIkNvbmN1cnJlbnQgc2V0dGluZyByZXF1aXJlbWVudHMiPyBEWU0gImF0 dGVtcHRzIj8KClllcC4gImF0dGVtcHRzIiBpcyBtb3JlIGFjY3VyYXRlLgoKPiBKYW4KPgoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1h aWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcv eGVuLWRldmVsCg==