From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yu Zhang Subject: Re: [PATCH v9 2/5] x86/ioreq server: Add DMOP to map guest ram with p2m_ioreq_server to an ioreq server. Date: Thu, 23 Mar 2017 11:23:04 +0800 Message-ID: <58D33F98.4020704@linux.intel.com> References: <1490064773-26751-1-git-send-email-yu.c.zhang@linux.intel.com> <1490064773-26751-3-git-send-email-yu.c.zhang@linux.intel.com> <58D2965D0200007800146496@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: <58D2965D0200007800146496@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: Kevin Tian , George Dunlap , Andrew Cooper , Tim Deegan , xen-devel@lists.xen.org, Paul Durrant , zhiyuan.lv@intel.com, Jun Nakajima List-Id: xen-devel@lists.xenproject.org CgpPbiAzLzIyLzIwMTcgMTA6MjEgUE0sIEphbiBCZXVsaWNoIHdyb3RlOgo+Pj4+IE9uIDIxLjAz LjE3IGF0IDAzOjUyLCA8eXUuYy56aGFuZ0BsaW51eC5pbnRlbC5jb20+IHdyb3RlOgo+PiAtLS0K Pj4gICB4ZW4vYXJjaC94ODYvaHZtL2RtLmMgICAgICAgICAgICB8IDM3ICsrKysrKysrKysrKysr KysrKy0tCj4+ICAgeGVuL2FyY2gveDg2L2h2bS9lbXVsYXRlLmMgICAgICAgfCA2NSArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKy0tLQo+PiAgIHhlbi9hcmNoL3g4Ni9odm0vaW9yZXEu YyAgICAgICAgIHwgMzggKysrKysrKysrKysrKysrKysrKysrCj4+ICAgeGVuL2FyY2gveDg2L21t L2hhcC9uZXN0ZWRfaGFwLmMgfCAgMiArLQo+PiAgIHhlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMg ICAgICAgIHwgIDggKysrKy0KPj4gICB4ZW4vYXJjaC94ODYvbW0vcDJtLXB0LmMgICAgICAgICB8 IDE5ICsrKysrKystLS0tCj4+ICAgeGVuL2FyY2gveDg2L21tL3AybS5jICAgICAgICAgICAgfCA3 NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4+ICAgeGVuL2FyY2gv eDg2L21tL3NoYWRvdy9tdWx0aS5jICAgfCAgMyArLQo+PiAgIHhlbi9pbmNsdWRlL2FzbS14ODYv aHZtL2lvcmVxLmggIHwgIDIgKysKPj4gICB4ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oICAgICAg ICB8IDI2ICsrKysrKysrKysrKy0tCj4+ICAgeGVuL2luY2x1ZGUvcHVibGljL2h2bS9kbV9vcC5o ICAgfCAyOCArKysrKysrKysrKysrKysKPj4gICB4ZW4vaW5jbHVkZS9wdWJsaWMvaHZtL2h2bV9v cC5oICB8ICA4ICsrKystCj4+ICAgMTIgZmlsZXMgY2hhbmdlZCwgMjkwIGluc2VydGlvbnMoKyks IDIwIGRlbGV0aW9ucygtKQo+IEJ0dy4sIGlzbid0IHRoZXJlIGEgbGliZGV2aWNlbW9kZWwgd3Jh cHBlciBtaXNzaW5nIGhlcmUgZm9yIHRoaXMgbmV3Cj4gc3ViLW9wPwoKWWVzLiBJIHBsYW5lZCB0 byBhZGQgdGhlIHdyYXBwZXIgY29kZSBpbiBhbm90aGVyIHBhdGNoIGFmdGVyIHRoaXMgc2VyaWVz IAppcyBhY2NlcHRlZC4KSXMgdGhpcyBhIG11c3QgaW4gdGhpcyBwYXRjaHNldD8KCj4+IEBAIC0x NzcsOCArMTc4LDY0IEBAIHN0YXRpYyBpbnQgaHZtZW11bF9kb19pbygKPj4gICAgICAgICAgIGJy ZWFrOwo+PiAgICAgICBjYXNlIFg4NkVNVUxfVU5IQU5ETEVBQkxFOgo+PiAgICAgICB7Cj4+IC0g ICAgICAgIHN0cnVjdCBodm1faW9yZXFfc2VydmVyICpzID0KPj4gLSAgICAgICAgICAgIGh2bV9z ZWxlY3RfaW9yZXFfc2VydmVyKGN1cnItPmRvbWFpbiwgJnApOwo+PiArICAgICAgICAvKgo+PiAr ICAgICAgICAgKiBYZW4gaXNuJ3QgZW11bGF0aW5nIHRoZSBpbnN0cnVjdGlvbiBpbnRlcm5hbGx5 LCBzbyBzZWUgaWYKPj4gKyAgICAgICAgICogdGhlcmUncyBhbiBpb3JlcSBzZXJ2ZXIgdGhhdCBj YW4gaGFuZGxlIGl0LiBSdWxlczoKPj4gKyAgICAgICAgICoKPj4gKyAgICAgICAgICogLSBQSU8g YW5kICJub3JtYWwiIE1NSU8gcnVuIHRocm91Z2ggaHZtX3NlbGVjdF9pb3JlcV9zZXJ2ZXIoKQo+ PiArICAgICAgICAgKiB0byBjaG9vc2UgdGhlIGlvcmVxIHNlcnZlciBieSByYW5nZS4gSWYgbm8g c2VydmVyIGlzIGZvdW5kLAo+PiArICAgICAgICAgKiB0aGUgYWNjZXNzIGlzIGlnbm9yZWQuCj4+ ICsgICAgICAgICAqCj4+ICsgICAgICAgICAqIC0gcDJtX2lvcmVxX3NlcnZlciBhY2Nlc3NlcyBh cmUgaGFuZGxlZCBieSB0aGUgZGVzaWduYXRlZAo+PiArICAgICAgICAgKiBpb3JlcV9zZXJ2ZXIg Zm9yIHRoZSBkb21haW4sIGJ1dCB0aGVyZSBhcmUgc29tZSBjb3JuZXIKPj4gKyAgICAgICAgICog Y2FzZXM6Cj4+ICsgICAgICAgICAqCj4+ICsgICAgICAgICAqICAgLSBJZiB0aGUgZG9tYWluIGlv cmVxX3NlcnZlciBpcyBOVUxMLCBhc3N1bWUgdGhlcmUgaXMgYQo+PiArICAgICAgICAgKiAgIHJh Y2UgYmV0d2VlbiB0aGUgdW5iaW5kaW5nIG9mIGlvcmVxIHNlcnZlciBhbmQgZ3Vlc3QgZmF1bHQK Pj4gKyAgICAgICAgICogICBzbyByZS10cnkgdGhlIGluc3RydWN0aW9uLgo+IEFuZCB0aGF0IHJl dHJ5IHdvbid0IGNvbWUgYmFjayBoZXJlIGJlY2F1c2Ugb2Y/IChUaGUgYW5zd2VyCj4gc2hvdWxk IG5vdCBpbmNsdWRlIGFueSBiZWhhdmlvciBhZGRlZCBieSBzdWJzZXF1ZW50IHBhdGNoZXMuKQoK WW91IGdvdCBtZS4gOikKSW4gdGhpcyBwYXRjaCwgcmV0cnkgd2lsbCBjb21lIGJhY2sgaGVyZS4g SXQgc2hvdWxkIGJlIGFmdGVyIHBhdGNoIDQgb3IgCnBhdGNoIDUgdGhhdCB0aGUgcmV0cnkKd2ls bCBiZSBpZ25vcmVkKHAybSB0eXBlIGNoYW5nZWQgYmFjayB0byBwMm1fcmFtX3J3IGFmdGVyIHRo ZSB1bmJpbmRpbmcpLgoKPj4gKyAgICAgICAgICovCj4+ICsgICAgICAgIHN0cnVjdCBodm1faW9y ZXFfc2VydmVyICpzID0gTlVMTDsKPj4gKyAgICAgICAgcDJtX3R5cGVfdCBwMm10ID0gcDJtX2lu dmFsaWQ7Cj4+ICsKPj4gKyAgICAgICAgaWYgKCBpc19tbWlvICkKPj4gKyAgICAgICAgewo+PiAr ICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBnbWZuID0gcGFkZHJfdG9fcGZuKGFkZHIpOwo+PiAr Cj4+ICsgICAgICAgICAgICBnZXRfZ2ZuX3F1ZXJ5X3VubG9ja2VkKGN1cnJkLCBnbWZuLCAmcDJt dCk7Cj4+ICsKPj4gKyAgICAgICAgICAgIGlmICggcDJtdCA9PSBwMm1faW9yZXFfc2VydmVyICkK Pj4gKyAgICAgICAgICAgIHsKPj4gKyAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmxhZ3M7 Cj4+ICsKPj4gKyAgICAgICAgICAgICAgICAvKgo+PiArICAgICAgICAgICAgICAgICAqIFZhbHVl IG9mIHMgY291bGQgYmUgc3RhbGUsIHdoZW4gd2UgbG9zdCBhIHJhY2UKPj4gKyAgICAgICAgICAg ICAgICAgKiB3aXRoIGRtX29wIHdoaWNoIHVubWFwcyBwMm1faW9yZXFfc2VydmVyIGZyb20gdGhl Cj4+ICsgICAgICAgICAgICAgICAgICogaW9yZXEgc2VydmVyLiBZZXQgdGhlcmUncyBubyBjaGVh cCB3YXkgdG8gYXZvaWQKPj4gKyAgICAgICAgICAgICAgICAgKiB0aGlzLCBzbyBkZXZpY2UgbW9k ZWwgbmVlZCB0byBkbyB0aGUgY2hlY2suCj4+ICsgICAgICAgICAgICAgICAgICovCj4+ICsgICAg ICAgICAgICAgICAgcyA9IHAybV9nZXRfaW9yZXFfc2VydmVyKGN1cnJkLCAmZmxhZ3MpOwo+PiAr Cj4+ICsgICAgICAgICAgICAgICAgLyoKPj4gKyAgICAgICAgICAgICAgICAgKiBJZiBwMm10IGlz IGlvcmVxX3NlcnZlciBidXQgaW9yZXFfc2VydmVyIGlzIE5VTEwsCj4+ICsgICAgICAgICAgICAg ICAgICogd2UgcHJvYmFibHkgbG9zdCBhIHJhY2Ugd2l0aCB1bmJpbmRpbmcgb2YgaW9yZXEKPj4g KyAgICAgICAgICAgICAgICAgKiBzZXJ2ZXIsIGp1c3QgcmV0cnkgdGhlIGFjY2Vzcy4KPj4gKyAg ICAgICAgICAgICAgICAgKi8KPiBUaGlzIHJlcGVhdHMgdGhlIGVhcmxpZXIgY29tbWVudCAtIHBs ZWFzZSBzZXR0bGUgb24gd2hlcmUgdG8gc3RhdGUKPiB0aGlzLCBidXQgZG9uJ3Qgc2F5IHRoZSBl eGFjdCBzYW1lIHRoaW5nIHR3aWNlIHdpdGhpbiBhIGZldyBsaW5lcyBvZgo+IGNvZGUuCgpUaGFu a3MsIHdpbGwgcmVtb3ZlIHRoaXMgY29tbWVudC4KCj4+ICsgICAgICAgICAgICAgICAgaWYgKCBz ID09IE5VTEwgKQo+PiArICAgICAgICAgICAgICAgIHsKPj4gKyAgICAgICAgICAgICAgICAgICAg cmMgPSBYODZFTVVMX1JFVFJZOwo+PiArICAgICAgICAgICAgICAgICAgICB2aW8tPmlvX3JlcS5z dGF0ZSA9IFNUQVRFX0lPUkVRX05PTkU7Cj4+ICsgICAgICAgICAgICAgICAgICAgIGJyZWFrOwo+ PiArICAgICAgICAgICAgICAgIH0KPj4gKyAgICAgICAgICAgIH0KPj4gKyAgICAgICAgfQo+PiAr Cj4+ICsgICAgICAgIC8qCj4+ICsgICAgICAgICAqIFZhbHVlIG9mIHMgY291bGQgYmUgc3RhbGUs IHdoZW4gd2UgbG9zdCBhIHJhY2Ugd2l0aCBkbV9vcAo+PiArICAgICAgICAgKiB3aGljaCB1bm1h cHMgdGhpcyBQSU8vTU1JTyBhZGRyZXNzIGZyb20gdGhlIGlvcmVxIHNlcnZlci4KPj4gKyAgICAg ICAgICogVGhlIGRldmljZSBtb2RlbCBzaWRlIG5lZWQgdG8gZG8gdGhlIGNoZWNrLgo+IEkgdGhp bmsgIndpbGwgZG8iIHdvdWxkIGJlIG1vcmUgbmF0dXJhbCBoZXJlLCBvciBhZGQgImFueXdheSIg dG8KPiB0aGUgZW5kIG9mIHRoZSBzZW50ZW5jZS4KPgoKR290IGl0LiBUaGFua3MuCgo+PiBAQCAt OTE0LDYgKzkxNiw0MiBAQCBpbnQgaHZtX3VubWFwX2lvX3JhbmdlX2Zyb21faW9yZXFfc2VydmVy KHN0cnVjdCBkb21haW4gKmQsIGlvc2VydmlkX3QgaWQsCj4+ICAgICAgIHJldHVybiByYzsKPj4g ICB9Cj4+ICAgCj4+ICtpbnQgaHZtX21hcF9tZW1fdHlwZV90b19pb3JlcV9zZXJ2ZXIoc3RydWN0 IGRvbWFpbiAqZCwgaW9zZXJ2aWRfdCBpZCwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB1aW50MzJfdCB0eXBlLCB1aW50MzJfdCBmbGFncykKPj4gK3sKPj4gKyAgICBz dHJ1Y3QgaHZtX2lvcmVxX3NlcnZlciAqczsKPj4gKyAgICBpbnQgcmM7Cj4+ICsKPj4gKyAgICAv KiBGb3Igbm93LCBvbmx5IEhWTU1FTV9pb3JlcV9zZXJ2ZXIgaXMgc3VwcG9ydGVkLiAqLwo+PiAr ICAgIGlmICggdHlwZSAhPSBIVk1NRU1faW9yZXFfc2VydmVyICkKPj4gKyAgICAgICAgcmV0dXJu IC1FSU5WQUw7Cj4+ICsKPj4gKyAgICAvKiBGb3Igbm93LCBvbmx5IHdyaXRlIGVtdWxhdGlvbiBp cyBzdXBwb3J0ZWQuICovCj4+ICsgICAgaWYgKCBmbGFncyAmIH4oWEVOX0RNT1BfSU9SRVFfTUVN X0FDQ0VTU19XUklURSkgKQo+IFN0cmF5IHBhcmVudGhlc2VzLgoKR290IGl0Lgo+PiAtLS0gYS94 ZW4vYXJjaC94ODYvbW0vaGFwL25lc3RlZF9oYXAuYwo+PiArKysgYi94ZW4vYXJjaC94ODYvbW0v aGFwL25lc3RlZF9oYXAuYwo+PiBAQCAtMTcyLDcgKzE3Miw3IEBAIG5lc3RlZGhhcF93YWxrX0ww X3AybShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLCBwYWRkcl90IEwxX2dwYSwgcGFkZHJfdCAqTDBf Z3BhLAo+PiAgICAgICBpZiAoICpwMm10ID09IHAybV9tbWlvX2RpcmVjdCApCj4+ICAgICAgICAg ICBnb3RvIGRpcmVjdF9tbWlvX291dDsKPj4gICAgICAgcmMgPSBORVNURURIVk1fUEFHRUZBVUxU X01NSU87Cj4+IC0gICAgaWYgKCAqcDJtdCA9PSBwMm1fbW1pb19kbSApCj4+ICsgICAgaWYgKCAq cDJtdCA9PSBwMm1fbW1pb19kbSB8fCAqcDJtdCA9PSBwMm1faW9yZXFfc2VydmVyICkKPiBCdHcu LCBob3cgZG9lcyB0aGlzIGFkZGl0aW9uIG1hdGNoIHVwIHdpdGggdGhlIHJjIHZhbHVlIGJlaW5n Cj4gYXNzaWduZWQgcmlnaHQgYmVmb3JlIHRoZSBpZigpPwoKV2VsbCByZXR1cm5pbmcgYSBORVNU RURIVk1fUEFHRUZBVUxUX01NSU8gaW4gc3VjaCBjYXNlIHdpbGwgdHJpZ2dlciAKaGFuZGxlX21t aW8oKSBsYXRlciBpbgpodm1faGFwX25lc3RlZF9wYWdlX2ZhdWx0KCkuIEd1ZXNzIHRoYXQgaXMg d2hhdCB3ZSBleHBlY3RlZC4KCj4+IC0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMKPj4g KysrIGIveGVuL2FyY2gveDg2L21tL3AybS1lcHQuYwo+PiBAQCAtMTMxLDYgKzEzMSwxMyBAQCBz dGF0aWMgdm9pZCBlcHRfcDJtX3R5cGVfdG9fZmxhZ3Moc3RydWN0IHAybV9kb21haW4gKnAybSwg ZXB0X2VudHJ5X3QgKmVudHJ5LAo+PiAgICAgICAgICAgICAgIGVudHJ5LT5yID0gZW50cnktPncg PSBlbnRyeS0+eCA9IDE7Cj4+ICAgICAgICAgICAgICAgZW50cnktPmEgPSBlbnRyeS0+ZCA9ICEh Y3B1X2hhc192bXhfZXB0X2FkOwo+PiAgICAgICAgICAgICAgIGJyZWFrOwo+PiArICAgICAgICBj YXNlIHAybV9pb3JlcV9zZXJ2ZXI6Cj4+ICsgICAgICAgICAgICBlbnRyeS0+ciA9IDE7Cj4+ICsg ICAgICAgICAgICBlbnRyeS0+dyA9ICEocDJtLT5pb3JlcS5mbGFncyAmIFhFTl9ETU9QX0lPUkVR X01FTV9BQ0NFU1NfV1JJVEUpOwo+IElzIHRoaXMgZWZmZWN0aXZlbHkgb3BlbiBjb2RlZCBwMm1f Z2V0X2lvcmVxX3NlcnZlcigpIGFjdHVhbGx5Cj4gb2theT8gSWYgc28sIHdoeSBkb2VzIHRoZSBm dW5jdGlvbiBuZWVkIHRvIGJlIHVzZWQgZWxzZXdoZXJlLAo+IGluc3RlYWQgb2YgZG9pbmcgZGly ZWN0LCBsb2NrLWZyZWUgYWNjZXNzZXM/CgpNYXliZSB5b3VyIGNvbW1lbnRzIGlzIGFib3V0IHdo ZXRoZXIgaXQgaXMgbmVjZXNzYXJ5IHRvIHVzZSB0aGUgbG9jayBpbiAKcDJtX2dldF9pb3JlcV9z ZXJ2ZXIoKT8KSSBzdGlsbCBiZWxpZXZlIHNvLCBpdCBkb2VzIG5vdCBvbmx5IHByb3RlY3QgdGhl IHZhbHVlIG9mIGlvcmVxIHNlcnZlciwgCmJ1dCBhbHNvIHRoZSBmbGFnIHRvZ2V0aGVyIHdpdGgg aXQuCgpCZXNpZGVzLCBpdCBpcyB1c2VkIG5vdCBvbmx5IGluIHRoZSBlbXVsYXRpb24gcHJvY2Vz cywgYnV0IGFsc28gdGhlIApoeXBlcmNhbGwgdG8gc2V0IHRoZSBtZW0gdHlwZS4KU28gdGhlIGxv Y2sgY2FuIHN0aWxsIHByb3ZpZGUgc29tZSBraW5kIHByb3RlY3Rpb24gYWdhaW5zdCB0aGUgCnAy bV9zZXRfaW9yZXFfc2VydmVyKCkgLSBldmVuIGl0IGRvZXMKbm90IGFsd2F5cyBkbyBzby4KCj4+ ICt2b2lkIHAybV9kZXN0cm95X2lvcmVxX3NlcnZlcihjb25zdCBzdHJ1Y3QgZG9tYWluICpkLAo+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGh2bV9pb3JlcV9z ZXJ2ZXIgKnMpCj4+ICt7Cj4+ICsgICAgc3RydWN0IHAybV9kb21haW4gKnAybSA9IHAybV9nZXRf aG9zdHAybShkKTsKPj4gKwo+PiArICAgIHNwaW5fbG9jaygmcDJtLT5pb3JlcS5sb2NrKTsKPj4g Kwo+PiArICAgIGlmICggcDJtLT5pb3JlcS5zZXJ2ZXIgPT0gcyApCj4+ICsgICAgewo+PiArICAg ICAgICBwMm0tPmlvcmVxLnNlcnZlciA9IE5VTEw7Cj4+ICsgICAgICAgIHAybS0+aW9yZXEuZmxh Z3MgPSAwOwo+PiArICAgIH0KPj4gKwo+PiArICAgIHNwaW5fdW5sb2NrKCZwMm0tPmlvcmVxLmxv Y2spOwo+PiArfQo+IElzIHRoaXMgZnVuY3Rpb24gcmVhbGx5IG5lZWRlZD8gSS5lLiBjYW4ndCB0 aGUgY2FsbGVyIHNpbXBseSBjYWxsCj4gcDJtX3NldF9pb3JlcV9zZXJ2ZXIoZCwgMCwgcykgaW5z dGVhZD8KCllvdSBhcmUgcmlnaHQsIHdlIGNhbiB1c2UgcDJtX3NldF9pb3JlcV9zZXJ2ZXIoZCwg MCwgcykuIDopCgpZdQo+IEphbgo+CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVu Lm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==