From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jason Wang Subject: Re: [PATCH RFC 1/2] virtio-net: bql support Date: Thu, 6 Dec 2018 16:17:36 +0800 Message-ID: <21384cb5-99a6-7431-1039-b356521e1bc3__21334.3221963898$1544084149$gmane$org@redhat.com> References: <20181205225323.12555-1-mst@redhat.com> <20181205225323.12555-2-mst@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181205225323.12555-2-mst@redhat.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 To: "Michael S. Tsirkin" , linux-kernel@vger.kernel.org Cc: netdev@vger.kernel.org, virtualization@lists.linux-foundation.org, maxime.coquelin@redhat.com, wexu@redhat.com, "David S. Miller" List-Id: virtualization@lists.linuxfoundation.org Ck9uIDIwMTgvMTIvNiDkuIrljYg2OjU0LCBNaWNoYWVsIFMuIFRzaXJraW4gd3JvdGU6Cj4gV2hl biB1c2VfbmFwaSBpcyBzZXQsIGxldCdzIGVuYWJsZSBCUUxzLiAgTm90ZTogc29tZSBvZiB0aGUg aXNzdWVzIGFyZQo+IHNpbWlsYXIgdG8gd2lmaS4gIEl0J3Mgd29ydGggY29uc2lkZXJpbmcgd2hl dGhlciBzb21ldGhpbmcgc2ltaWxhciB0bwo+IGNvbW1pdCAzNjE0OGMyYmJmYmUgKCJtYWM4MDIx MTogQWRqdXN0IFRTUSBwYWNpbmcgc2hpZnQiKSBtaWdodCBiZQo+IGJlbmVmaXRpYWwuCgoKSSd2 ZSBwbGF5ZWQgYSBzaW1pbGFyIHBhdGNoIHNldmVyYWwgZGF5cyBiZWZvcmUuIFRoZSB0cmlja3kg cGFydCBpcyB0aGUgCm1vZGUgc3dpdGNoaW5nIGJldHdlZW4gbmFwaSBhbmQgbm8gbmFwaS4gV2Ug c2hvdWxkIG1ha2Ugc3VyZSB3aGVuIHRoZSAKcGFja2V0IGlzIHNlbnQgYW5kIHRyYWtjZWQgYnkg QlFMLMKgIGl0IHNob3VsZCBiZSBjb25zdW1lZCBieSBCUUwgYXMgCndlbGwuIEkgZGlkIGl0IGJ5 IHRyYWNraW5nIGl0IHRocm91Z2ggc2tiLT5jYi7CoCBBbmQgZGVhbCB3aXRoIHRoZSBmcmVlemUg CmJ5IHJlc2V0IHRoZSBCUUwgc3RhdHVzLiBQYXRjaCBhdHRhY2hlZC4KCkJ1dCB3aGVuIHRlc3Rp bmcgd2l0aCB2aG9zdC1uZXQsIEkgZG9uJ3QgdmVyeSBhIHN0YWJsZSBwZXJmb3JtYW5jZSwgaXQg CndhcyBwcm9iYWJseSBiZWNhdXNlIHdlIGJhdGNoIHRoZSB1c2VkIHJpbmcgdXBkYXRpbmcgc28g dHggaW50ZXJydXB0IG1heSAKY29tZSByYW5kb21seS4gV2UgcHJvYmFibHkgbmVlZCB0byBpbXBs ZW1lbnQgdGltZSBib3VuZGVkIGNvYWxlc2NpbmcgCm1lY2hhbmlzbSB3aGljaCBjb3VsZCBiZSBj b25maWd1cmVkIGZyb20gdXNlcnNwYWNlLgoKQnR3LCBtYXliZSBpdCdzIHRpbWUganVzdCBlbmFi bGUgbmFwaSBUWCBieSBkZWZhdWx0LiBJIGdldCB+MTAlIFRDUF9SUiAKcmVncmVzc2lvbiBvbiBt YWNoaW5lIHdpdGhvdXQgQVBJQ3YsIChoYXZlbid0IGZvdW5kIHRpbWUgdG8gdGVzdCBBUElDdiAK bWFjaGluZSkuIEJ1dCBjb25zaWRlciBpdCB3YXMgZm9yIGNvcnJlY3RuZXNzLCBJIHRoaW5rIGl0 J3MgYWNjZXB0YWJsZT8gClRoZW4gd2UgY2FuIGRvIG9wdGltaXphdGlvbiBvbiB0b3A/CgoKVGhh bmtzCgoKPiBTaWduZWQtb2ZmLWJ5OiBNaWNoYWVsIFMuIFRzaXJraW4gPG1zdEByZWRoYXQuY29t Pgo+IC0tLQo+ICAgZHJpdmVycy9uZXQvdmlydGlvX25ldC5jIHwgMjcgKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tCj4gICAxIGZpbGUgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgOCBkZWxl dGlvbnMoLSkKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC92aXJ0aW9fbmV0LmMgYi9kcml2 ZXJzL25ldC92aXJ0aW9fbmV0LmMKPiBpbmRleCBjZWNmZDc3YzlmM2MuLmI2NTdiZGU2Yjk0YiAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC92aXJ0aW9fbmV0LmMKPiArKysgYi9kcml2ZXJzL25l dC92aXJ0aW9fbmV0LmMKPiBAQCAtMTMyNSw3ICsxMzI1LDggQEAgc3RhdGljIGludCB2aXJ0bmV0 X3JlY2VpdmUoc3RydWN0IHJlY2VpdmVfcXVldWUgKnJxLCBpbnQgYnVkZ2V0LAo+ICAgCXJldHVy biBzdGF0cy5wYWNrZXRzOwo+ICAgfQo+ICAgCj4gLXN0YXRpYyB2b2lkIGZyZWVfb2xkX3htaXRf c2ticyhzdHJ1Y3Qgc2VuZF9xdWV1ZSAqc3EpCj4gK3N0YXRpYyB2b2lkIGZyZWVfb2xkX3htaXRf c2ticyhzdHJ1Y3Qgc2VuZF9xdWV1ZSAqc3EsIHN0cnVjdCBuZXRkZXZfcXVldWUgKnR4cSwKPiAr CQkJICAgICAgIGJvb2wgdXNlX25hcGkpCj4gICB7Cj4gICAJc3RydWN0IHNrX2J1ZmYgKnNrYjsK PiAgIAl1bnNpZ25lZCBpbnQgbGVuOwo+IEBAIC0xMzQ3LDYgKzEzNDgsOSBAQCBzdGF0aWMgdm9p ZCBmcmVlX29sZF94bWl0X3NrYnMoc3RydWN0IHNlbmRfcXVldWUgKnNxKQo+ICAgCWlmICghcGFj a2V0cykKPiAgIAkJcmV0dXJuOwo+ICAgCj4gKwlpZiAodXNlX25hcGkpCj4gKwkJbmV0ZGV2X3R4 X2NvbXBsZXRlZF9xdWV1ZSh0eHEsIHBhY2tldHMsIGJ5dGVzKTsKPiArCj4gICAJdTY0X3N0YXRz X3VwZGF0ZV9iZWdpbigmc3EtPnN0YXRzLnN5bmNwKTsKPiAgIAlzcS0+c3RhdHMuYnl0ZXMgKz0g Ynl0ZXM7Cj4gICAJc3EtPnN0YXRzLnBhY2tldHMgKz0gcGFja2V0czsKPiBAQCAtMTM2NCw3ICsx MzY4LDcgQEAgc3RhdGljIHZvaWQgdmlydG5ldF9wb2xsX2NsZWFudHgoc3RydWN0IHJlY2VpdmVf cXVldWUgKnJxKQo+ICAgCQlyZXR1cm47Cj4gICAKPiAgIAlpZiAoX19uZXRpZl90eF90cnlsb2Nr KHR4cSkpIHsKPiAtCQlmcmVlX29sZF94bWl0X3NrYnMoc3EpOwo+ICsJCWZyZWVfb2xkX3htaXRf c2ticyhzcSwgdHhxLCB0cnVlKTsKPiAgIAkJX19uZXRpZl90eF91bmxvY2sodHhxKTsKPiAgIAl9 Cj4gICAKPiBAQCAtMTQ0MCw3ICsxNDQ0LDcgQEAgc3RhdGljIGludCB2aXJ0bmV0X3BvbGxfdHgo c3RydWN0IG5hcGlfc3RydWN0ICpuYXBpLCBpbnQgYnVkZ2V0KQo+ICAgCXN0cnVjdCBuZXRkZXZf cXVldWUgKnR4cSA9IG5ldGRldl9nZXRfdHhfcXVldWUodmktPmRldiwgdnEydHhxKHNxLT52cSkp Owo+ICAgCj4gICAJX19uZXRpZl90eF9sb2NrKHR4cSwgcmF3X3NtcF9wcm9jZXNzb3JfaWQoKSk7 Cj4gLQlmcmVlX29sZF94bWl0X3NrYnMoc3EpOwo+ICsJZnJlZV9vbGRfeG1pdF9za2JzKHNxLCB0 eHEsIHRydWUpOwo+ICAgCV9fbmV0aWZfdHhfdW5sb2NrKHR4cSk7Cj4gICAKPiAgIAl2aXJ0cXVl dWVfbmFwaV9jb21wbGV0ZShuYXBpLCBzcS0+dnEsIDApOwo+IEBAIC0xNTA1LDEzICsxNTA5LDE1 IEBAIHN0YXRpYyBuZXRkZXZfdHhfdCBzdGFydF94bWl0KHN0cnVjdCBza19idWZmICpza2IsIHN0 cnVjdCBuZXRfZGV2aWNlICpkZXYpCj4gICAJc3RydWN0IHNlbmRfcXVldWUgKnNxID0gJnZpLT5z cVtxbnVtXTsKPiAgIAlpbnQgZXJyOwo+ICAgCXN0cnVjdCBuZXRkZXZfcXVldWUgKnR4cSA9IG5l dGRldl9nZXRfdHhfcXVldWUoZGV2LCBxbnVtKTsKPiAtCWJvb2wga2ljayA9ICFza2ItPnhtaXRf bW9yZTsKPiArCWJvb2wgbW9yZSA9IHNrYi0+eG1pdF9tb3JlOwo+ICAgCWJvb2wgdXNlX25hcGkg PSBzcS0+bmFwaS53ZWlnaHQ7Cj4gKwl1bnNpZ25lZCBpbnQgYnl0ZXMgPSBza2ItPmxlbjsKPiAr CWJvb2wga2ljazsKPiAgIAo+ICAgCS8qIEZyZWUgdXAgYW55IHBlbmRpbmcgb2xkIGJ1ZmZlcnMg YmVmb3JlIHF1ZXVlaW5nIG5ldyBvbmVzLiAqLwo+IC0JZnJlZV9vbGRfeG1pdF9za2JzKHNxKTsK PiArCWZyZWVfb2xkX3htaXRfc2ticyhzcSwgdHhxLCB1c2VfbmFwaSk7Cj4gICAKPiAtCWlmICh1 c2VfbmFwaSAmJiBraWNrKQo+ICsJaWYgKHVzZV9uYXBpICYmICFtb3JlKQo+ICAgCQl2aXJ0cXVl dWVfZW5hYmxlX2NiX2RlbGF5ZWQoc3EtPnZxKTsKPiAgIAo+ICAgCS8qIHRpbWVzdGFtcCBwYWNr ZXQgaW4gc29mdHdhcmUgKi8KPiBAQCAtMTU1Miw3ICsxNTU4LDcgQEAgc3RhdGljIG5ldGRldl90 eF90IHN0YXJ0X3htaXQoc3RydWN0IHNrX2J1ZmYgKnNrYiwgc3RydWN0IG5ldF9kZXZpY2UgKmRl dikKPiAgIAkJaWYgKCF1c2VfbmFwaSAmJgo+ICAgCQkgICAgdW5saWtlbHkoIXZpcnRxdWV1ZV9l bmFibGVfY2JfZGVsYXllZChzcS0+dnEpKSkgewo+ICAgCQkJLyogTW9yZSBqdXN0IGdvdCB1c2Vk LCBmcmVlIHRoZW0gdGhlbiByZWNoZWNrLiAqLwo+IC0JCQlmcmVlX29sZF94bWl0X3NrYnMoc3Ep Owo+ICsJCQlmcmVlX29sZF94bWl0X3NrYnMoc3EsIHR4cSwgZmFsc2UpOwo+ICAgCQkJaWYgKHNx LT52cS0+bnVtX2ZyZWUgPj0gMitNQVhfU0tCX0ZSQUdTKSB7Cj4gICAJCQkJbmV0aWZfc3RhcnRf c3VicXVldWUoZGV2LCBxbnVtKTsKPiAgIAkJCQl2aXJ0cXVldWVfZGlzYWJsZV9jYihzcS0+dnEp Owo+IEBAIC0xNTYwLDcgKzE1NjYsMTIgQEAgc3RhdGljIG5ldGRldl90eF90IHN0YXJ0X3htaXQo c3RydWN0IHNrX2J1ZmYgKnNrYiwgc3RydWN0IG5ldF9kZXZpY2UgKmRldikKPiAgIAkJfQo+ICAg CX0KPiAgIAo+IC0JaWYgKGtpY2sgfHwgbmV0aWZfeG1pdF9zdG9wcGVkKHR4cSkpIHsKPiArCWlm ICh1c2VfbmFwaSkKPiArCQlraWNrID0gX19uZXRkZXZfdHhfc2VudF9xdWV1ZSh0eHEsIGJ5dGVz LCBtb3JlKTsKPiArCWVsc2UKPiArCQlraWNrID0gIW1vcmUgfHwgbmV0aWZfeG1pdF9zdG9wcGVk KHR4cSk7Cj4gKwo+ICsJaWYgKGtpY2spIHsKPiAgIAkJaWYgKHZpcnRxdWV1ZV9raWNrX3ByZXBh cmUoc3EtPnZxKSAmJiB2aXJ0cXVldWVfbm90aWZ5KHNxLT52cSkpIHsKPiAgIAkJCXU2NF9zdGF0 c191cGRhdGVfYmVnaW4oJnNxLT5zdGF0cy5zeW5jcCk7Cj4gICAJCQlzcS0+c3RhdHMua2lja3Mr KzsKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVmlydHVh bGl6YXRpb24gbWFpbGluZyBsaXN0ClZpcnR1YWxpemF0aW9uQGxpc3RzLmxpbnV4LWZvdW5kYXRp b24ub3JnCmh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZy9tYWlsbWFuL2xpc3RpbmZv L3ZpcnR1YWxpemF0aW9u