From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Michael S. Tsirkin" Subject: Re: [PATCH net-next V4 5/5] vhost: access vq metadata through kernel virtual address Date: Wed, 23 Jan 2019 23:51:59 -0500 Message-ID: <20190123234624-mutt-send-email-mst@kernel.org> References: <20190123095557.30168-1-jasowang@redhat.com> <20190123095557.30168-6-jasowang@redhat.com> <20190123085821-mutt-send-email-mst@kernel.org> <335ba55b-087f-4b35-6311-540070b9647f@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <335ba55b-087f-4b35-6311-540070b9647f@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: Jason Wang Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org, virtualization@lists.linux-foundation.org List-Id: virtualization@lists.linuxfoundation.org T24gVGh1LCBKYW4gMjQsIDIwMTkgYXQgMTI6MDc6NTRQTSArMDgwMCwgSmFzb24gV2FuZyB3cm90 ZToKPiAKPiBPbiAyMDE5LzEvMjMg5LiL5Y2IMTA6MDgsIE1pY2hhZWwgUy4gVHNpcmtpbiB3cm90 ZToKPiA+IE9uIFdlZCwgSmFuIDIzLCAyMDE5IGF0IDA1OjU1OjU3UE0gKzA4MDAsIEphc29uIFdh bmcgd3JvdGU6Cj4gPiA+IEl0IHdhcyBub3RpY2VkIHRoYXQgdGhlIGNvcHlfdXNlcigpIGZyaWVu ZHMgdGhhdCB3YXMgdXNlZCB0byBhY2Nlc3MKPiA+ID4gdmlydHF1ZXVlIG1ldGRhdGEgdGVuZHMg dG8gYmUgdmVyeSBleHBlbnNpdmUgZm9yIGRhdGFwbGFuZQo+ID4gPiBpbXBsZW1lbnRhdGlvbiBs aWtlIHZob3N0IHNpbmNlIGl0IGludm9sdmVzIGxvdHMgb2Ygc29mdHdhcmUgY2hlY2tzLAo+ID4g PiBzcGVjdWxhdGlvbiBiYXJyaWVyLCBoYXJkd2FyZSBmZWF0dXJlIHRvZ2dsaW5nIChlLmcgU01B UCkuIFRoZQo+ID4gPiBleHRyYSBjb3N0IHdpbGwgYmUgbW9yZSBvYnZpb3VzIHdoZW4gdHJhbnNm ZXJyaW5nIHNtYWxsIHBhY2tldHMgc2luY2UKPiA+ID4gdGhlIHRpbWUgc3BlbnQgb24gbWV0YWRh dGEgYWNjZXNzaW5nIGJlY29tZSBtb3JlIHNpZ25pZmljYW50Lgo+ID4gPiAKPiA+ID4gVGhpcyBw YXRjaCB0cmllcyB0byBlbGltaW5hdGUgdGhvc2Ugb3ZlcmhlYWRzIGJ5IGFjY2Vzc2luZyB0aGVt Cj4gPiA+IHRocm91Z2gga2VybmVsIHZpcnR1YWwgYWRkcmVzcyBieSB2bWFwKCkuIFRvIG1ha2Ug dGhlIHBhZ2VzIGNhbiBiZQo+ID4gPiBtaWdyYXRlZCwgaW5zdGVhZCBvZiBwaW5uaW5nIHRoZW0g dGhyb3VnaCBHVVAsIHdlIHVzZSBNTVUgbm90aWZpZXJzIHRvCj4gPiA+IGludmFsaWRhdGUgdm1h cHMgYW5kIHJlLWVzdGFibGlzaCB2bWFwcyBkdXJpbmcgZWFjaCByb3VuZCBvZiBtZXRhZGF0YQo+ ID4gPiBwcmVmZXRjaGluZyBpZiBuZWNlc3NhcnkuIEZvciBkZXZpY2VzIHRoYXQgZG9lc24ndCB1 c2UgbWV0YWRhdGEKPiA+ID4gcHJlZmV0Y2hpbmcsIHRoZSBtZW1vcnkgYWNjZXNzb3JzIGZhbGxi YWNrIHRvIG5vcm1hbCBjb3B5X3VzZXIoKQo+ID4gPiBpbXBsZW1lbnRhdGlvbiBncmFjZWZ1bGx5 LiBUaGUgaW52YWxpZGF0aW9uIHdhcyBzeW5jaHJvbml6ZWQgd2l0aAo+ID4gPiBkYXRhcGF0aCB0 aHJvdWdoIHZxIG11dGV4LCBhbmQgaW4gb3JkZXIgdG8gYXZvaWQgaG9sZCB2cSBtdXRleCBkdXJp bmcKPiA+ID4gcmFuZ2UgY2hlY2tpbmcsIE1NVSBub3RpZmllciB3YXMgdGVhcmVkIGRvd24gd2hl biB0cnlpbmcgdG8gbW9kaWZ5IHZxCj4gPiA+IG1ldGFkYXRhLgo+ID4gPiAKPiA+ID4gQW5vdGhl ciB0aGluZyBpcyBrZXJuZWwgbGFja3MgZWZmaWNpZW50IHNvbHV0aW9uIGZvciB0cmFja2luZyBk aXJ0eQo+ID4gPiBwYWdlcyBieSB2bWFwKCksIHRoaXMgd2lsbCBsZWFkIGlzc3VlcyBpZiB2aG9z dCBpcyB1c2luZyBmaWxlIGJhY2tlZAo+ID4gPiBtZW1vcnkgd2hpY2ggbmVlZHMgY2FyZSBvZiB3 cml0ZWJhY2suIFRoaXMgcGF0Y2ggc29sdmVzIHRoaXMgaXNzdWUgYnkKPiA+ID4ganVzdCBza2lw cGluZyB0aGUgdm1hIHRoYXQgaXMgZmlsZSBiYWNrZWQgYW5kIGZhbGxiYWNrIHRvIG5vcm1hbAo+ ID4gPiBjb3B5X3VzZXIoKSBmcmllbmRzLiBUaGlzIG1pZ2h0IGludHJvZHVjZSBzb21lIG92ZXJo ZWFkcyBmb3IgZmlsZQo+ID4gPiBiYWNrZWQgdXNlcnMgYnV0IGNvbnNpZGVyIHRoaXMgdXNlIGNh c2UgaXMgcmFyZSB3ZSBjb3VsZCBkbwo+ID4gPiBvcHRpbWl6YXRpb25zIG9uIHRvcC4KPiA+ID4g Cj4gPiA+IE5vdGUgdGhhdCB0aGlzIHdhcyBvbmx5IGRvbmUgd2hlbiBkZXZpY2UgSU9UTEIgaXMg bm90IGVuYWJsZWQuIFdlCj4gPiA+IGNvdWxkIHVzZSBzaW1pbGFyIG1ldGhvZCB0byBvcHRpbWl6 ZSBpdCBpbiB0aGUgZnV0dXJlLgo+ID4gPiAKPiA+ID4gVGVzdHMgc2hvd3MgYXQgbW9zdCBhYm91 dCAyMiUgaW1wcm92ZW1lbnQgb24gVFggUFBTIHdoZW4gdXNpbmcKPiA+ID4gdmlydGlvLXVzZXIg KyB2aG9zdF9uZXQgKyB4ZHAxICsgVEFQIG9uIDIuNkdIeiBCcm9hZHdlbGw6Cj4gPiA+IAo+ID4g PiAgICAgICAgICBTTUFQIG9uIHwgU01BUCBvZmYKPiA+ID4gQmVmb3JlOiA1LjBNcHBzIHwgNi42 TXBwcwo+ID4gPiBBZnRlcjogIDYuMU1wcHMgfCA3LjRNcHBzCj4gPiA+IAo+ID4gPiBTaWduZWQt b2ZmLWJ5OiBKYXNvbiBXYW5nIDxqYXNvd2FuZ0ByZWRoYXQuY29tPgo+ID4gCj4gPiBTbyB0aGlz IGlzIHRoZSBidWxrIG9mIHRoZSBjaGFuZ2UuCj4gPiBUaHJlZWUgdGhpbmdzIHRoYXQgSSBuZWVk IHRvIGxvb2sgaW50bwo+ID4gLSBBcmUgdGhlcmUgYW55IHNlY3VyaXR5IGlzc3VlcyB3aXRoIGJ5 cGFzc2luZyB0aGUgc3BlY3VsYXRpb24gYmFycmllcgo+ID4gICAgdGhhdCBpcyBub3JtYWxseSBw cmVzZW50IGFmdGVyIGFjY2Vzc19vaz8KPiAKPiAKPiBJZiB3ZSBjYW4gbWFrZSBzdXJlIHRoZSBi eXBhc3Npbmcgd2FzIG9ubHkgdXNlZCBpbiBhIGt0aHJlYWQgKHZob3N0KSwgaXQKPiBzaG91bGQg YmUgZmluZSBJIHRoaW5rLgo+IAo+IAo+ID4gLSBIb3cgaGFyZCBkb2VzIHRoZSBzcGVjaWFsIGhh bmRsaW5nIGZvcgo+ID4gICAgZmlsZSBiYWNrZWQgc3RvcmFnZSBtYWtlIHRlc3Rpbmc/Cj4gCj4g Cj4gSXQncyBhcyBzaW1wbGUgYXMgdW4tY29tbWVudGluZyB2aG9zdF9jYW5fdm1hcCgpPyBPciBJ IGNhbiB0cnkgdG8gaGFjayBxZW11Cj4gb3IgZHBkayB0byB0ZXN0IHRoaXMuCj4gCj4gCj4gPiAg ICBPbiB0aGUgb25lIGhhbmQgd2UgY291bGQgYWRkIGEgbW9kdWxlIHBhcmFtZXRlciB0bwo+ID4g ICAgZm9yY2UgY29weSB0by9mcm9tIHVzZXIuIG9uIHRoZSBvdGhlciB0aGF0J3MKPiA+ICAgIGFu b3RoZXIgY29uZmlndXJhdGlvbiB3ZSBuZWVkIHRvIHN1cHBvcnQuCj4gCj4gCj4gVGhhdCBzb3Vu ZHMgc3ViLW9wdGltYWwgc2luY2UgaXQgbGVhdmUgdGhlIGNob2ljZSB0byB1c2Vycy4KPiAKPiAK PiA+ICAgIEJ1dCBpb3RsYiBpcyBub3QgdXNpbmcgdm1hcCwgc28gbWF5YmUgdGhhdCdzIGVub3Vn aAo+ID4gICAgZm9yIHRlc3RpbmcuCj4gPiAtIEhvdyBoYXJkIGlzIGl0IHRvIGZpZ3VyZSBvdXQg d2hpY2ggbW9kZSB1c2VzIHdoaWNoIGNvZGUuCj4gPiAKPiA+IAo+ID4gCj4gPiBNZWFud2hpbGUs IGNvdWxkIHlvdSBwbHMgcG9zdCBkYXRhIGNvbXBhcmluZyB0aGlzIGxhc3QgcGF0Y2ggd2l0aCB0 aGUKPiA+IGJlbG93PyAgVGhpcyByZW1vdmVzIHRoZSBzcGVjdWxhdGlvbiBiYXJyaWVyIHJlcGxh Y2luZyBpdCB3aXRoIGEKPiA+ICh1c2VsZXNzIGJ1dCBhdCBsZWFzdCBtb3JlIGxpZ2h0d2VpZ2h0 KSBkYXRhIGRlcGVuZGVuY3kuCj4gCj4gCj4gU01BUCBvZmYKPiAKPiBZb3VyIHBhdGNoOiA3LjJN UFBzCj4gCj4gdm1hcDogNy40TXBwcwo+IAoKU291bmRzIG1vcmUgb3IgbGVzcyBhcyBleHBlY3Rl ZC4gVXAgdG8gMyUgZ2FpbiB3aXRoIHZtYXAgLSBJIHRoaW5rCnRoYXQncyBhIGJpdCBoaWdoZXIg dGhhbiB3aGF0IHdlIHNhdyBwcmV2aW91c2x5IHdoZW4gd2Ugc3dpdGNoZWQgZnJvbQpnZXRfdXNl ciB0byBfX2dldF91c2VyIGFuZCB0aGF0J3MgcHJvYmFibHkgYmVjYXVzZSBvZiBhbGwgdGhlCmFy cmF5X2luZGV4X25vc3BlYyB0cmlja2VyeS4KCj4gSSBkb24ndCB0ZXN0IFNNQVAgb24sIHNpbmNl IGl0IHdpbGwgYmUgbXVjaCBzbG93IGZvciBzdXJlLgoKUmlnaHQuIFNvIGJ5cGFzc2luZyBTTUFQ IHJlbWFpbnMgdGhlIG1haW4gcmVhc29uIHRvIGRvIHZtYXAgdHJpY2tzLgoKPiBUaGFua3MKCj4g Cj4gPiAKPiA+IFRoYW5rcyEKPiA+IAo+ID4gCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy92aG9z dC92aG9zdC5jIGIvZHJpdmVycy92aG9zdC92aG9zdC5jCj4gPiBpbmRleCBiYWM5MzlhZjhkYmIu LjM1MmVlN2UxNDQ3NiAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvdmhvc3Qvdmhvc3QuYwo+ID4g KysrIGIvZHJpdmVycy92aG9zdC92aG9zdC5jCj4gPiBAQCAtNzM5LDcgKzczOSw3IEBAIHN0YXRp YyBpbnQgdmhvc3RfY29weV90b191c2VyKHN0cnVjdCB2aG9zdF92aXJ0cXVldWUgKnZxLCB2b2lk IF9fdXNlciAqdG8sCj4gPiAgIAlpbnQgcmV0Owo+ID4gICAJaWYgKCF2cS0+aW90bGIpCj4gPiAt CQlyZXR1cm4gX19jb3B5X3RvX3VzZXIodG8sIGZyb20sIHNpemUpOwo+ID4gKwkJcmV0dXJuIGNv cHlfdG9fdXNlcih0bywgZnJvbSwgc2l6ZSk7Cj4gPiAgIAllbHNlIHsKPiA+ICAgCQkvKiBUaGlz IGZ1bmN0aW9uIHNob3VsZCBiZSBjYWxsZWQgYWZ0ZXIgaW90bGIKPiA+ICAgCQkgKiBwcmVmZXRj aCwgd2hpY2ggbWVhbnMgd2UncmUgc3VyZSB0aGF0IGFsbCB2cQo+ID4gQEAgLTc1Miw3ICs3NTIs NyBAQCBzdGF0aWMgaW50IHZob3N0X2NvcHlfdG9fdXNlcihzdHJ1Y3Qgdmhvc3RfdmlydHF1ZXVl ICp2cSwgdm9pZCBfX3VzZXIgKnRvLAo+ID4gICAJCQkJICAgICBWSE9TVF9BRERSX1VTRUQpOwo+ ID4gICAJCWlmICh1YWRkcikKPiA+IC0JCQlyZXR1cm4gX19jb3B5X3RvX3VzZXIodWFkZHIsIGZy b20sIHNpemUpOwo+ID4gKwkJCXJldHVybiBjb3B5X3RvX3VzZXIodWFkZHIsIGZyb20sIHNpemUp Owo+ID4gICAJCXJldCA9IHRyYW5zbGF0ZV9kZXNjKHZxLCAodTY0KSh1aW50cHRyX3QpdG8sIHNp emUsIHZxLT5pb3RsYl9pb3YsCj4gPiAgIAkJCQkgICAgIEFSUkFZX1NJWkUodnEtPmlvdGxiX2lv diksCj4gPiBAQCAtNzc0LDcgKzc3NCw3IEBAIHN0YXRpYyBpbnQgdmhvc3RfY29weV9mcm9tX3Vz ZXIoc3RydWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEsIHZvaWQgKnRvLAo+ID4gICAJaW50IHJldDsK PiA+ICAgCWlmICghdnEtPmlvdGxiKQo+ID4gLQkJcmV0dXJuIF9fY29weV9mcm9tX3VzZXIodG8s IGZyb20sIHNpemUpOwo+ID4gKwkJcmV0dXJuIGNvcHlfZnJvbV91c2VyKHRvLCBmcm9tLCBzaXpl KTsKPiA+ICAgCWVsc2Ugewo+ID4gICAJCS8qIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIGNhbGxl ZCBhZnRlciBpb3RsYgo+ID4gICAJCSAqIHByZWZldGNoLCB3aGljaCBtZWFucyB3ZSdyZSBzdXJl IHRoYXQgdnEKPiA+IEBAIC03ODcsNyArNzg3LDcgQEAgc3RhdGljIGludCB2aG9zdF9jb3B5X2Zy b21fdXNlcihzdHJ1Y3Qgdmhvc3RfdmlydHF1ZXVlICp2cSwgdm9pZCAqdG8sCj4gPiAgIAkJc3Ry dWN0IGlvdl9pdGVyIGY7Cj4gPiAgIAkJaWYgKHVhZGRyKQo+ID4gLQkJCXJldHVybiBfX2NvcHlf ZnJvbV91c2VyKHRvLCB1YWRkciwgc2l6ZSk7Cj4gPiArCQkJcmV0dXJuIGNvcHlfZnJvbV91c2Vy KHRvLCB1YWRkciwgc2l6ZSk7Cj4gPiAgIAkJcmV0ID0gdHJhbnNsYXRlX2Rlc2ModnEsICh1NjQp KHVpbnRwdHJfdClmcm9tLCBzaXplLCB2cS0+aW90bGJfaW92LAo+ID4gICAJCQkJICAgICBBUlJB WV9TSVpFKHZxLT5pb3RsYl9pb3YpLAo+ID4gQEAgLTg1NSwxMyArODU1LDEzIEBAIHN0YXRpYyBp bmxpbmUgdm9pZCBfX3VzZXIgKl9fdmhvc3RfZ2V0X3VzZXIoc3RydWN0IHZob3N0X3ZpcnRxdWV1 ZSAqdnEsCj4gPiAgICh7IFwKPiA+ICAgCWludCByZXQgPSAtRUZBVUxUOyBcCj4gPiAgIAlpZiAo IXZxLT5pb3RsYikgeyBcCj4gPiAtCQlyZXQgPSBfX3B1dF91c2VyKHgsIHB0cik7IFwKPiA+ICsJ CXJldCA9IHB1dF91c2VyKHgsIHB0cik7IFwKPiA+ICAgCX0gZWxzZSB7IFwKPiA+ICAgCQlfX3R5 cGVvZl9fKHB0cikgdG8gPSBcCj4gPiAgIAkJCShfX3R5cGVvZl9fKHB0cikpIF9fdmhvc3RfZ2V0 X3VzZXIodnEsIHB0ciwJXAo+ID4gICAJCQkJCSAgc2l6ZW9mKCpwdHIpLCBWSE9TVF9BRERSX1VT RUQpOyBcCj4gPiAgIAkJaWYgKHRvICE9IE5VTEwpIFwKPiA+IC0JCQlyZXQgPSBfX3B1dF91c2Vy KHgsIHRvKTsgXAo+ID4gKwkJCXJldCA9IHB1dF91c2VyKHgsIHRvKTsgXAo+ID4gICAJCWVsc2Ug XAo+ID4gICAJCQlyZXQgPSAtRUZBVUxUOwlcCj4gPiAgIAl9IFwKPiA+IEBAIC04NzIsMTQgKzg3 MiwxNCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgX191c2VyICpfX3Zob3N0X2dldF91c2VyKHN0cnVj dCB2aG9zdF92aXJ0cXVldWUgKnZxLAo+ID4gICAoeyBcCj4gPiAgIAlpbnQgcmV0OyBcCj4gPiAg IAlpZiAoIXZxLT5pb3RsYikgeyBcCj4gPiAtCQlyZXQgPSBfX2dldF91c2VyKHgsIHB0cik7IFwK PiA+ICsJCXJldCA9IGdldF91c2VyKHgsIHB0cik7IFwKPiA+ICAgCX0gZWxzZSB7IFwKPiA+ICAg CQlfX3R5cGVvZl9fKHB0cikgZnJvbSA9IFwKPiA+ICAgCQkJKF9fdHlwZW9mX18ocHRyKSkgX192 aG9zdF9nZXRfdXNlcih2cSwgcHRyLCBcCj4gPiAgIAkJCQkJCQkgICBzaXplb2YoKnB0ciksIFwK PiA+ICAgCQkJCQkJCSAgIHR5cGUpOyBcCj4gPiAgIAkJaWYgKGZyb20gIT0gTlVMTCkgXAo+ID4g LQkJCXJldCA9IF9fZ2V0X3VzZXIoeCwgZnJvbSk7IFwKPiA+ICsJCQlyZXQgPSBnZXRfdXNlcih4 LCBmcm9tKTsgXAo+ID4gICAJCWVsc2UgXAo+ID4gICAJCQlyZXQgPSAtRUZBVUxUOyBcCj4gPiAg IAl9IFwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVmly dHVhbGl6YXRpb24gbWFpbGluZyBsaXN0ClZpcnR1YWxpemF0aW9uQGxpc3RzLmxpbnV4LWZvdW5k YXRpb24ub3JnCmh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL3ZpcnR1YWxpemF0aW9u