From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jason Wang Subject: Re: [PATCH net-next v3 3/4] net: vhost: factor out busy polling logic to vhost_net_busy_poll() Date: Mon, 2 Jul 2018 10:29:41 +0800 Message-ID: References: <1530340438-3039-1-git-send-email-xiangxia.m.yue@gmail.com> <1530340438-3039-4-git-send-email-xiangxia.m.yue@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Cc: netdev@vger.kernel.org, virtualization@lists.linux-foundation.org, Tonghao Zhang , mst@redhat.com To: xiangxia.m.yue@gmail.com Return-path: In-Reply-To: <1530340438-3039-4-git-send-email-xiangxia.m.yue@gmail.com> Content-Language: en-US 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 List-Id: netdev.vger.kernel.org CgpPbiAyMDE45bm0MDbmnIgzMOaXpSAxNDozMywgeGlhbmd4aWEubS55dWVAZ21haWwuY29tIHdy b3RlOgo+IEZyb206IFRvbmdoYW8gWmhhbmcgPHhpYW5neGlhLm0ueXVlQGdtYWlsLmNvbT4KPgo+ IEZhY3RvciBvdXQgZ2VuZXJpYyBidXN5IHBvbGxpbmcgbG9naWMgYW5kIHdpbGwgYmUKPiB1c2Vk IGZvciB0eCBwYXRoIGluIHRoZSBuZXh0IHBhdGNoLiBBbmQgd2l0aCB0aGUgcGF0Y2gsCj4gcWVt dSBjYW4gc2V0IGRpZmZlcmVudGx5IHRoZSBidXN5bG9vcF90aW1lb3V0IGZvciByeCBxdWV1ZS4K Pgo+IFNpZ25lZC1vZmYtYnk6IFRvbmdoYW8gWmhhbmcgPHpoYW5ndG9uZ2hhb0BkaWRpY2h1eGlu Zy5jb20+Cj4gLS0tCj4gICBkcml2ZXJzL3Zob3N0L25ldC5jIHwgOTIgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIDEgZmlsZSBjaGFuZ2Vk LCA1MyBpbnNlcnRpb25zKCspLCAzOSBkZWxldGlvbnMoLSkKPgo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL3Zob3N0L25ldC5jIGIvZHJpdmVycy92aG9zdC9uZXQuYwo+IGluZGV4IDYyYmI4ZTguLjQ1 OGY4MWQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy92aG9zdC9uZXQuYwo+ICsrKyBiL2RyaXZlcnMv dmhvc3QvbmV0LmMKPiBAQCAtNDI5LDYgKzQyOSw1MCBAQCBzdGF0aWMgaW50IHZob3N0X25ldF9l bmFibGVfdnEoc3RydWN0IHZob3N0X25ldCAqbiwKPiAgIAlyZXR1cm4gdmhvc3RfcG9sbF9zdGFy dChwb2xsLCBzb2NrLT5maWxlKTsKPiAgIH0KPiAgIAo+ICtzdGF0aWMgaW50IHNrX2hhc19yeF9k YXRhKHN0cnVjdCBzb2NrICpzaykKPiArewo+ICsJc3RydWN0IHNvY2tldCAqc29jayA9IHNrLT5z a19zb2NrZXQ7Cj4gKwo+ICsJaWYgKHNvY2stPm9wcy0+cGVla19sZW4pCj4gKwkJcmV0dXJuIHNv Y2stPm9wcy0+cGVla19sZW4oc29jayk7Cj4gKwo+ICsJcmV0dXJuIHNrYl9xdWV1ZV9lbXB0eSgm c2stPnNrX3JlY2VpdmVfcXVldWUpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCB2aG9zdF9uZXRf YnVzeV9wb2xsKHN0cnVjdCB2aG9zdF9uZXQgKm5ldCwKPiArCQkJCXN0cnVjdCB2aG9zdF92aXJ0 cXVldWUgKnJ2cSwKPiArCQkJCXN0cnVjdCB2aG9zdF92aXJ0cXVldWUgKnR2cSwKPiArCQkJCWJv b2wgcngpCj4gK3sKPiArCXVuc2lnbmVkIGxvbmcgdW5pbml0aWFsaXplZF92YXIoZW5kdGltZSk7 Cj4gKwlzdHJ1Y3Qgc29ja2V0ICpzb2NrID0gcnZxLT5wcml2YXRlX2RhdGE7Cj4gKwlzdHJ1Y3Qg dmhvc3RfdmlydHF1ZXVlICp2cSA9IHJ4ID8gdHZxIDogcnZxOwo+ICsJdW5zaWduZWQgbG9uZyBi dXN5bG9vcF90aW1lb3V0ID0gcnggPyBydnEtPmJ1c3lsb29wX3RpbWVvdXQgOgo+ICsJCQkJCSAg ICAgIHR2cS0+YnVzeWxvb3BfdGltZW91dDsKCkFzIHNpbXBsZSBhcyB2cS0+YnVzeWxvb3BfdGlt ZW91dD8KCj4gKwo+ICsJbXV0ZXhfbG9ja19uZXN0ZWQoJnZxLT5tdXRleCwgcnggPyBWSE9TVF9O RVRfVlFfVFg6IFZIT1NUX05FVF9WUV9SWCk7CgpXZSBuZWVkIG1vdmUgc29jayA9IHJ2cS0+cHJp dmF0ZV9kYXRhIHVuZGVyIHRoZSBwcm90ZWN0aW9uIG9mIHZxIG11dGV4IAppZiByeCBpcyBmYWxz ZS4KCj4gKwl2aG9zdF9kaXNhYmxlX25vdGlmeSgmbmV0LT5kZXYsIHZxKTsKPiArCj4gKwlwcmVl bXB0X2Rpc2FibGUoKTsKPiArCWVuZHRpbWUgPSBidXN5X2Nsb2NrKCkgKyBidXN5bG9vcF90aW1l b3V0Owo+ICsJd2hpbGUgKHZob3N0X2Nhbl9idXN5X3BvbGwodHZxLT5kZXYsIGVuZHRpbWUpICYm Cj4gKwkgICAgICAgIShzb2NrICYmIHNrX2hhc19yeF9kYXRhKHNvY2stPnNrKSkgJiYKPiArCSAg ICAgICB2aG9zdF92cV9hdmFpbF9lbXB0eSh0dnEtPmRldiwgdHZxKSkKPiArCQljcHVfcmVsYXgo KTsKPiArCXByZWVtcHRfZW5hYmxlKCk7Cj4gKwo+ICsJaWYgKChyeCAmJiAhdmhvc3RfdnFfYXZh aWxfZW1wdHkoJm5ldC0+ZGV2LCB2cSkpIHx8Cj4gKwkgICAgKCFyeCAmJiAoc29jayAmJiBza19o YXNfcnhfZGF0YShzb2NrLT5zaykpKSkgewo+ICsJCXZob3N0X3BvbGxfcXVldWUoJnZxLT5wb2xs KTsKPiArCX0gZWxzZSBpZiAodW5saWtlbHkodmhvc3RfZW5hYmxlX25vdGlmeSgmbmV0LT5kZXYs IHZxKSkpIHsKPiArCQl2aG9zdF9kaXNhYmxlX25vdGlmeSgmbmV0LT5kZXYsIHZxKTsKPiArCQl2 aG9zdF9wb2xsX3F1ZXVlKCZ2cS0+cG9sbCk7Cj4gKwl9Cj4gKwo+ICsJbXV0ZXhfdW5sb2NrKCZ2 cS0+bXV0ZXgpOwo+ICt9Cj4gKwo+ICsKPiAgIHN0YXRpYyBpbnQgdmhvc3RfbmV0X3R4X2dldF92 cV9kZXNjKHN0cnVjdCB2aG9zdF9uZXQgKm5ldCwKPiAgIAkJCQkgICAgc3RydWN0IHZob3N0X3Zp cnRxdWV1ZSAqdnEsCj4gICAJCQkJICAgIHN0cnVjdCBpb3ZlYyBpb3ZbXSwgdW5zaWduZWQgaW50 IGlvdl9zaXplLAo+IEBAIC02MjEsMTYgKzY2NSw2IEBAIHN0YXRpYyBpbnQgcGVla19oZWFkX2xl bihzdHJ1Y3Qgdmhvc3RfbmV0X3ZpcnRxdWV1ZSAqcnZxLCBzdHJ1Y3Qgc29jayAqc2spCj4gICAJ cmV0dXJuIGxlbjsKPiAgIH0KPiAgIAo+IC1zdGF0aWMgaW50IHNrX2hhc19yeF9kYXRhKHN0cnVj dCBzb2NrICpzaykKPiAtewo+IC0Jc3RydWN0IHNvY2tldCAqc29jayA9IHNrLT5za19zb2NrZXQ7 Cj4gLQo+IC0JaWYgKHNvY2stPm9wcy0+cGVla19sZW4pCj4gLQkJcmV0dXJuIHNvY2stPm9wcy0+ cGVla19sZW4oc29jayk7Cj4gLQo+IC0JcmV0dXJuIHNrYl9xdWV1ZV9lbXB0eSgmc2stPnNrX3Jl Y2VpdmVfcXVldWUpOwo+IC19Cj4gLQo+ICAgc3RhdGljIHZvaWQgdmhvc3Rfcnhfc2lnbmFsX3Vz ZWQoc3RydWN0IHZob3N0X25ldF92aXJ0cXVldWUgKm52cSkKPiAgIHsKPiAgIAlzdHJ1Y3Qgdmhv c3RfdmlydHF1ZXVlICp2cSA9ICZudnEtPnZxOwo+IEBAIC02NDUsMzkgKzY3OSwxOSBAQCBzdGF0 aWMgdm9pZCB2aG9zdF9yeF9zaWduYWxfdXNlZChzdHJ1Y3Qgdmhvc3RfbmV0X3ZpcnRxdWV1ZSAq bnZxKQo+ICAgCj4gICBzdGF0aWMgaW50IHZob3N0X25ldF9yeF9wZWVrX2hlYWRfbGVuKHN0cnVj dCB2aG9zdF9uZXQgKm5ldCwgc3RydWN0IHNvY2sgKnNrKQo+ICAgewo+IC0Jc3RydWN0IHZob3N0 X25ldF92aXJ0cXVldWUgKnJ2cSA9ICZuZXQtPnZxc1tWSE9TVF9ORVRfVlFfUlhdOwo+IC0Jc3Ry dWN0IHZob3N0X25ldF92aXJ0cXVldWUgKm52cSA9ICZuZXQtPnZxc1tWSE9TVF9ORVRfVlFfVFhd Owo+IC0Jc3RydWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEgPSAmbnZxLT52cTsKPiAtCXVuc2lnbmVk IGxvbmcgdW5pbml0aWFsaXplZF92YXIoZW5kdGltZSk7Cj4gLQlpbnQgbGVuID0gcGVla19oZWFk X2xlbihydnEsIHNrKTsKPiArCXN0cnVjdCB2aG9zdF9uZXRfdmlydHF1ZXVlICpudnFfcnggPSAm bmV0LT52cXNbVkhPU1RfTkVUX1ZRX1JYXTsKPiArCXN0cnVjdCB2aG9zdF9uZXRfdmlydHF1ZXVl ICpudnFfdHggPSAmbmV0LT52cXNbVkhPU1RfTkVUX1ZRX1RYXTsKCkl0IGxvb2tzIHRvIG1lIHJu dnEgYW5kIHRudnEgaXMgc2xpZ2h0bHkgYmV0dGVyLgoKT3RoZXIgbG9va3MgZ29vZCB0byBtZS4K ClRoYW5rcwoKPiAgIAo+IC0JaWYgKCFsZW4gJiYgdnEtPmJ1c3lsb29wX3RpbWVvdXQpIHsKPiAt CQkvKiBGbHVzaCBiYXRjaGVkIGhlYWRzIGZpcnN0ICovCj4gLQkJdmhvc3Rfcnhfc2lnbmFsX3Vz ZWQocnZxKTsKPiAtCQkvKiBCb3RoIHR4IHZxIGFuZCByeCBzb2NrZXQgd2VyZSBwb2xsZWQgaGVy ZSAqLwo+IC0JCW11dGV4X2xvY2tfbmVzdGVkKCZ2cS0+bXV0ZXgsIFZIT1NUX05FVF9WUV9UWCk7 Cj4gLQkJdmhvc3RfZGlzYWJsZV9ub3RpZnkoJm5ldC0+ZGV2LCB2cSk7Cj4gKwlpbnQgbGVuID0g cGVla19oZWFkX2xlbihudnFfcngsIHNrKTsKPiAgIAo+IC0JCXByZWVtcHRfZGlzYWJsZSgpOwo+ IC0JCWVuZHRpbWUgPSBidXN5X2Nsb2NrKCkgKyB2cS0+YnVzeWxvb3BfdGltZW91dDsKPiAtCj4g LQkJd2hpbGUgKHZob3N0X2Nhbl9idXN5X3BvbGwoJm5ldC0+ZGV2LCBlbmR0aW1lKSAmJgo+IC0J CSAgICAgICAhc2tfaGFzX3J4X2RhdGEoc2spICYmCj4gLQkJICAgICAgIHZob3N0X3ZxX2F2YWls X2VtcHR5KCZuZXQtPmRldiwgdnEpKQo+IC0JCQljcHVfcmVsYXgoKTsKPiAtCj4gLQkJcHJlZW1w dF9lbmFibGUoKTsKPiAtCj4gLQkJaWYgKCF2aG9zdF92cV9hdmFpbF9lbXB0eSgmbmV0LT5kZXYs IHZxKSkKPiAtCQkJdmhvc3RfcG9sbF9xdWV1ZSgmdnEtPnBvbGwpOwo+IC0JCWVsc2UgaWYgKHVu bGlrZWx5KHZob3N0X2VuYWJsZV9ub3RpZnkoJm5ldC0+ZGV2LCB2cSkpKSB7Cj4gLQkJCXZob3N0 X2Rpc2FibGVfbm90aWZ5KCZuZXQtPmRldiwgdnEpOwo+IC0JCQl2aG9zdF9wb2xsX3F1ZXVlKCZ2 cS0+cG9sbCk7Cj4gLQkJfQo+ICsJaWYgKCFsZW4gJiYgbnZxX3J4LT52cS5idXN5bG9vcF90aW1l b3V0KSB7Cj4gKwkJLyogRmx1c2ggYmF0Y2hlZCBoZWFkcyBmaXJzdCAqLwo+ICsJCXZob3N0X3J4 X3NpZ25hbF91c2VkKG52cV9yeCk7Cj4gICAKPiAtCQltdXRleF91bmxvY2soJnZxLT5tdXRleCk7 Cj4gKwkJLyogQm90aCB0eCB2cSBhbmQgcnggc29ja2V0IHdlcmUgcG9sbGVkIGhlcmUgKi8KPiAr CQl2aG9zdF9uZXRfYnVzeV9wb2xsKG5ldCwgJm52cV9yeC0+dnEsICZudnFfdHgtPnZxLCB0cnVl KTsKPiAgIAo+IC0JCWxlbiA9IHBlZWtfaGVhZF9sZW4ocnZxLCBzayk7Cj4gKwkJbGVuID0gcGVl a19oZWFkX2xlbihudnFfcngsIHNrKTsKPiAgIAl9Cj4gICAKPiAgIAlyZXR1cm4gbGVuOwoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVmlydHVhbGl6YXRp b24gbWFpbGluZyBsaXN0ClZpcnR1YWxpemF0aW9uQGxpc3RzLmxpbnV4LWZvdW5kYXRpb24ub3Jn Cmh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3ZpcnR1 YWxpemF0aW9u