From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57707) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bTCAH-0002f3-4N for qemu-devel@nongnu.org; Fri, 29 Jul 2016 14:05:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bTCAB-0007R7-K6 for qemu-devel@nongnu.org; Fri, 29 Jul 2016 14:05:41 -0400 Received: from mail-co1nam03on0098.outbound.protection.outlook.com ([104.47.40.98]:57365 helo=NAM03-CO1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bTCAA-0007Qz-DM for qemu-devel@nongnu.org; Fri, 29 Jul 2016 14:05:35 -0400 From: Felipe Franciosi Date: Fri, 29 Jul 2016 15:31:46 +0000 Message-ID: <66527FAB-CA7E-4B55-82F5-D75769D9C665@nutanix.com> References: <1469689643-11556-1-git-send-email-saxenap.ltc@gmail.com> <1469689643-11556-2-git-send-email-saxenap.ltc@gmail.com> In-Reply-To: Content-Language: en-US MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Subject: Re: [Qemu-devel] [PATCH for-2.7 v5.1 1/2] vhost-user: Introduce a new protocol feature REPLY_ACK. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?utf-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= Cc: Prerna Saxena , QEMU , "Michael S. Tsirkin" , Felipe Franciosi , Anil Kumar Boggarapu , Prerna Saxena SGV5YSwNCg0KT24gMjkgSnVsIDIwMTYsIGF0IDEzOjQ3LCBNYXJjLUFuZHLDqSBMdXJlYXUgPG1h cmNhbmRyZS5sdXJlYXVAZ21haWwuY29tPG1haWx0bzptYXJjYW5kcmUubHVyZWF1QGdtYWlsLmNv bT4+IHdyb3RlOg0KDQpIaQ0KDQpPbiBUaHUsIEp1bCAyOCwgMjAxNiBhdCAxMTowNyBBTSwgUHJl cm5hIFNheGVuYSA8c2F4ZW5hcC5sdGNAZ21haWwuY29tPG1haWx0bzpzYXhlbmFwLmx0Y0BnbWFp bC5jb20+PiB3cm90ZToNCkZyb206IFByZXJuYSBTYXhlbmEgPHByZXJuYS5zYXhlbmFAbnV0YW5p eC5jb208bWFpbHRvOnByZXJuYS5zYXhlbmFAbnV0YW5peC5jb20+Pg0KDQpUaGlzIGludHJvZHVj ZXMgdGhlIFZIT1NUX1VTRVJfUFJPVE9DT0xfRl9SRVBMWV9BQ0suDQoNCklmIG5lZ290aWF0ZWQs IGNsaWVudCBhcHBsaWNhdGlvbnMgc2hvdWxkIHNlbmQgYSB1NjQgcGF5bG9hZCBpbg0KcmVzcG9u c2UgdG8gYW55IG1lc3NhZ2UgdGhhdCBjb250YWlucyB0aGUgIm5lZWRfcmVwbHkiIGJpdCBzZXQN Cm9uIHRoZSBtZXNzYWdlIGZsYWdzLiBTZXR0aW5nIHRoZSBwYXlsb2FkIHRvICJ6ZXJvIiBpbmRp Y2F0ZXMgdGhlDQpjb21tYW5kIGZpbmlzaGVkIHN1Y2Nlc3NmdWxseS4gTGlrZXdpc2UsIHNldHRp bmcgaXQgdG8gIm5vbi16ZXJvIg0KaW5kaWNhdGVzIGFuIGVycm9yLg0KDQpDdXJyZW50bHkgaW1w bGVtZW50ZWQgb25seSBmb3IgU0VUX01FTV9UQUJMRS4NCg0KU2lnbmVkLW9mZi1ieTogUHJlcm5h IFNheGVuYSA8cHJlcm5hLnNheGVuYUBudXRhbml4LmNvbTxtYWlsdG86cHJlcm5hLnNheGVuYUBu dXRhbml4LmNvbT4+DQotLS0NCmRvY3Mvc3BlY3Mvdmhvc3QtdXNlci50eHQgfCAyNiArKysrKysr KysrKysrKysrKysrKysrKysrKw0KaHcvdmlydGlvL3Zob3N0LXVzZXIuYyAgICB8IDMyICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrDQoyIGZpbGVzIGNoYW5nZWQsIDU4IGluc2VydGlv bnMoKykNCg0KZGlmZiAtLWdpdCBhL2RvY3Mvc3BlY3Mvdmhvc3QtdXNlci50eHQgYi9kb2NzL3Nw ZWNzL3Zob3N0LXVzZXIudHh0DQppbmRleCA3NzdjNDljLi41NGI1YzhmIDEwMDY0NA0KLS0tIGEv ZG9jcy9zcGVjcy92aG9zdC11c2VyLnR4dA0KKysrIGIvZG9jcy9zcGVjcy92aG9zdC11c2VyLnR4 dA0KQEAgLTM3LDYgKzM3LDggQEAgY29uc2lzdHMgb2YgMyBoZWFkZXIgZmllbGRzIGFuZCBhIHBh eWxvYWQ6DQogKiBGbGFnczogMzItYml0IGJpdCBmaWVsZDoNCiAgIC0gTG93ZXIgMiBiaXRzIGFy ZSB0aGUgdmVyc2lvbiAoY3VycmVudGx5IDB4MDEpDQogICAtIEJpdCAyIGlzIHRoZSByZXBseSBm bGFnIC0gbmVlZHMgdG8gYmUgc2VudCBvbiBlYWNoIHJlcGx5IGZyb20gdGhlIHNsYXZlDQorICAg LSBCaXQgMyBpcyB0aGUgbmVlZF9yZXBseSBmbGFnIC0gc2VlIFZIT1NUX1VTRVJfUFJPVE9DT0xf Rl9SRVBMWV9BQ0sgZm9yDQorICAgICBkZXRhaWxzLg0KICogU2l6ZSAtIDMyLWJpdCBzaXplIG9m IHRoZSBwYXlsb2FkDQoNCg0KQEAgLTEyNiw2ICsxMjgsOCBAQCB0aGUgb25lcyB0aGF0IGRvOg0K ICogVkhPU1RfR0VUX1ZSSU5HX0JBU0UNCiAqIFZIT1NUX1NFVF9MT0dfQkFTRSAoaWYgVkhPU1Rf VVNFUl9QUk9UT0NPTF9GX0xPR19TSE1GRCkNCg0KK1sgQWxzbyBzZWUgdGhlIHNlY3Rpb24gb24g UkVQTFlfQUNLIHByb3RvY29sIGV4dGVuc2lvbi4gXQ0KKw0KVGhlcmUgYXJlIHNldmVyYWwgbWVz c2FnZXMgdGhhdCB0aGUgbWFzdGVyIHNlbmRzIHdpdGggZmlsZSBkZXNjcmlwdG9ycyBwYXNzZWQN CmluIHRoZSBhbmNpbGxhcnkgZGF0YToNCg0KQEAgLTI1NCw2ICsyNTgsNyBAQCBQcm90b2NvbCBm ZWF0dXJlcw0KI2RlZmluZSBWSE9TVF9VU0VSX1BST1RPQ09MX0ZfTVEgICAgICAgICAgICAgMA0K I2RlZmluZSBWSE9TVF9VU0VSX1BST1RPQ09MX0ZfTE9HX1NITUZEICAgICAgMQ0KI2RlZmluZSBW SE9TVF9VU0VSX1BST1RPQ09MX0ZfUkFSUCAgICAgICAgICAgMg0KKyNkZWZpbmUgVkhPU1RfVVNF Ul9QUk9UT0NPTF9GX1JFUExZX0FDSyAgICAgIDMNCg0KTWVzc2FnZSB0eXBlcw0KLS0tLS0tLS0t LS0tLQ0KQEAgLTQ2NCwzICs0NjksMjQgQEAgTWVzc2FnZSB0eXBlcw0KICAgICAgaXMgcHJlc2Vu dCBpbiBWSE9TVF9VU0VSX0dFVF9QUk9UT0NPTF9GRUFUVVJFUy4NCiAgICAgIFRoZSBmaXJzdCA2 IGJ5dGVzIG9mIHRoZSBwYXlsb2FkIGNvbnRhaW4gdGhlIG1hYyBhZGRyZXNzIG9mIHRoZSBndWVz dCB0bw0KICAgICAgYWxsb3cgdGhlIHZob3N0IHVzZXIgYmFja2VuZCB0byBjb25zdHJ1Y3QgYW5k IGJyb2FkY2FzdCB0aGUgZmFrZSBSQVJQLg0KKw0KK1ZIT1NUX1VTRVJfUFJPVE9DT0xfRl9SRVBM WV9BQ0s6DQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KK1RoZSBvcmlnaW5hbCB2 aG9zdC11c2VyIHNwZWNpZmljYXRpb24gb25seSBkZW1hbmRzIHJlcGxpZXMgZm9yIGNlcnRhaW4N Citjb21tYW5kcy4gVGhpcyBkaWZmZXJzIGZyb20gdGhlIHZob3N0IHByb3RvY29sIGltcGxlbWVu dGF0aW9uIHdoZXJlIGNvbW1hbmRzDQorYXJlIHNlbnQgb3ZlciBhbiBpb2N0bCgpIGNhbGwgYW5k IGJsb2NrIHVudGlsIHRoZSBjbGllbnQgaGFzIGNvbXBsZXRlZC4NCisNCitXaXRoIHRoaXMgcHJv dG9jb2wgZXh0ZW5zaW9uIG5lZ290aWF0ZWQsIHRoZSBzZW5kZXIgKFFFTVUpIGNhbiBzZXQgdGhl DQorIm5lZWRfcmVwbHkiIFtCaXQgM10gZmxhZyB0byBhbnkgY29tbWFuZC4gVGhpcyBpbmRpY2F0 ZXMgdGhhdA0KK3RoZSBjbGllbnQgTVVTVCByZXNwb25kIHdpdGggYSBQYXlsb2FkIFZob3N0VXNl ck1zZyBpbmRpY2F0aW5nIHN1Y2Nlc3Mgb3INCitmYWlsdXJlLiBUaGUgcGF5bG9hZCBzaG91bGQg YmUgc2V0IHRvIHplcm8gb24gc3VjY2VzcyBvciBub24temVybyBvbiBmYWlsdXJlLg0KKyhVbmxl c3MgdGhlIG1lc3NhZ2UgYWxyZWFkeSBoYXMgYW4gZXhwbGljaXQgcmVwbHkgYm9keSkNCg0KVW5s ZXNzL3VubGVzcyAoZm9yIGNvbnNpc3RlbmN5LCB0aGUgcmVzdCBvZiB0aGUgZG9jdW1lbnQgZG9l c24ndCB1c2UNClVwcGVyLWNhc2UgaW5zaWRlIHBhcmVudGhlc2VzKQ0KDQpBY3R1YWxseSwgaWYg dGhlIHNlbnRlbmNlIHN0YXJ0cyBpbnNpZGUgdGhlIHBhcmVudGhlc2lzIGl0IHNob3VsZCBiZSBj YXBpdGFsLg0KU2VlIHJ1bGUgMmE6DQpodHRwOi8vd3d3LmdyYW1tYXJib29rLmNvbS9wdW5jdHVh dGlvbi9wYXJlbnMuYXNwDQoNClByZXJuYSdzIHRleHQgbG9va3MgY29ycmVjdCB0byBtZS4gSWYg aXQncyB3cm9uZyBpbiBvdGhlciBwbGFjZXMgd2Ugc2hvdWxkIHByb2JhYmx5IGZpeCBpdCB0aGVy ZSBzZXBhcmF0ZWx5Lg0KDQoNCisNCitUaGlzIGluZGljYXRlcyB0byBRRU1VIHRoYXQgdGhlIHJl cXVlc3RlZCBvcGVyYXRpb24gaGFzIGRldGVybWluaXN0aWNhbGx5DQorYmVlbiBtZXQgb3Igbm90 LiBUb2RheSwgUUVNVSBpcyBleHBlY3RlZCB0byB0ZXJtaW5hdGUgdGhlIG1haW4gdmhvc3QtdXNl cg0KK2xvb3AgdXBvbiByZWNlaXZpbmcgc3VjaCBlcnJvcnMuIEluIGZ1dHVyZSwgcWVtdSBjb3Vs ZCBiZSB0YXVnaHQgdG8gYmUgbW9yZQ0KK3Jlc2lsaWVudCBmb3Igc2VsZWN0aXZlIHJlcXVlc3Rz Lg0KKw0KK0ZvciB0aGUgbWVzc2FnZSB0eXBlcyB0aGF0IGFscmVhZHkgc29saWNpdCBhIHJlcGx5 IGZyb20gdGhlIGNsaWVudCwgdGhlDQorcHJlc2VuY2Ugb2YgVkhPU1RfVVNFUl9QUk9UT0NPTF9G X1JFUExZX0FDSyBvciBuZWVkX3JlcGx5IGJpdCBiZWluZyBzZXQgYnJpbmdzDQorbm8gYmVoYXZp b3VyaWFsIGNoYW5nZS4gKFNlZSB0aGUgJ0NvbW11bmljYXRpb24nIHNlY3Rpb24gZm9yIGRldGFp bHMuKQ0KDQpTZWUvc2VlDQoNClNhbWUgYXMgbXkgY29tbWVudCBhYm92ZS4NCg0KQ2hlZXJzLA0K RmVsaXBlDQoNCg0KZGlmZiAtLWdpdCBhL2h3L3ZpcnRpby92aG9zdC11c2VyLmMgYi9ody92aXJ0 aW8vdmhvc3QtdXNlci5jDQppbmRleCA0OTVlMDlmLi44NmU3YWUwIDEwMDY0NA0KLS0tIGEvaHcv dmlydGlvL3Zob3N0LXVzZXIuYw0KKysrIGIvaHcvdmlydGlvL3Zob3N0LXVzZXIuYw0KQEAgLTMx LDYgKzMxLDcgQEAgZW51bSBWaG9zdFVzZXJQcm90b2NvbEZlYXR1cmUgew0KICAgIFZIT1NUX1VT RVJfUFJPVE9DT0xfRl9NUSA9IDAsDQogICAgVkhPU1RfVVNFUl9QUk9UT0NPTF9GX0xPR19TSE1G RCA9IDEsDQogICAgVkhPU1RfVVNFUl9QUk9UT0NPTF9GX1JBUlAgPSAyLA0KKyAgICBWSE9TVF9V U0VSX1BST1RPQ09MX0ZfUkVQTFlfQUNLID0gMywNCg0KICAgIFZIT1NUX1VTRVJfUFJPVE9DT0xf Rl9NQVgNCn07DQpAQCAtODQsNiArODUsNyBAQCB0eXBlZGVmIHN0cnVjdCBWaG9zdFVzZXJNc2cg ew0KDQojZGVmaW5lIFZIT1NUX1VTRVJfVkVSU0lPTl9NQVNLICAgICAoMHgzKQ0KI2RlZmluZSBW SE9TVF9VU0VSX1JFUExZX01BU0sgICAgICAgKDB4MTw8MikNCisjZGVmaW5lIFZIT1NUX1VTRVJf TkVFRF9SRVBMWV9NQVNLICAgICAgICgweDEgPDwgMykNCg0KWW91IGNvdWxkIGFsaWduIGl0LCBh bmQgdXNlIHRoZSBzYW1lIHN0eWxlIGFzIHRoZSBsaW5lIGFib3ZlDQoNCiAgICB1aW50MzJfdCBm bGFnczsNCiAgICB1aW50MzJfdCBzaXplOyAvKiB0aGUgZm9sbG93aW5nIHBheWxvYWQgc2l6ZSAq Lw0KICAgIHVuaW9uIHsNCkBAIC0xNTgsNiArMTYwLDI1IEBAIGZhaWw6DQogICAgcmV0dXJuIC0x Ow0KfQ0KDQorc3RhdGljIGludCBwcm9jZXNzX21lc3NhZ2VfcmVwbHkoc3RydWN0IHZob3N0X2Rl diAqZGV2LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZob3N0VXNlclJl cXVlc3QgcmVxdWVzdCkNCg0KYmFkIGluZGVudGF0aW9uDQoNCit7DQorICAgIFZob3N0VXNlck1z ZyBtc2c7DQorDQorICAgIGlmICh2aG9zdF91c2VyX3JlYWQoZGV2LCAmbXNnKSA8IDApIHsNCisg ICAgICAgIHJldHVybiAwOw0KDQpyZXR1cm4gLTENCg0KKyAgICB9DQorDQorICAgIGlmIChtc2cu cmVxdWVzdCAhPSByZXF1ZXN0KSB7DQorICAgICAgICBlcnJvcl9yZXBvcnQoIlJlY2VpdmVkIHVu ZXhwZWN0ZWQgbXNnIHR5cGUuIg0KKyAgICAgICAgICAgICAgICAgICAgICAgICJFeHBlY3RlZCAl ZCByZWNlaXZlZCAlZCIsDQorICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdCwgbXNnLnJl cXVlc3QpOw0KDQpiYWQgaW5kZW50YXRpb24NCg0KKyAgICAgICAgcmV0dXJuIC0xOw0KKyAgICB9 DQorDQorICAgIHJldHVybiBtc2cucGF5bG9hZC51NjQgPyAtMSA6IDA7DQorfQ0KKw0Kc3RhdGlj IGJvb2wgdmhvc3RfdXNlcl9vbmVfdGltZV9yZXF1ZXN0KFZob3N0VXNlclJlcXVlc3QgcmVxdWVz dCkNCnsNCiAgICBzd2l0Y2ggKHJlcXVlc3QpIHsNCkBAIC0yMzksMTEgKzI2MCwxOCBAQCBzdGF0 aWMgaW50IHZob3N0X3VzZXJfc2V0X21lbV90YWJsZShzdHJ1Y3Qgdmhvc3RfZGV2ICpkZXYsDQog ICAgaW50IGZkc1tWSE9TVF9NRU1PUllfTUFYX05SRUdJT05TXTsNCiAgICBpbnQgaSwgZmQ7DQog ICAgc2l6ZV90IGZkX251bSA9IDA7DQorICAgIGJvb2wgcmVwbHlfc3VwcG9ydGVkID0gdmlydGlv X2hhc19mZWF0dXJlKGRldi0+cHJvdG9jb2xfZmVhdHVyZXMsDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFZIT1NUX1VTRVJfUFJPVE9DT0xfRl9SRVBMWV9BQ0spOw0KDQpiYWQgaW5kZW50 YXRpb24NCg0KKw0KICAgIFZob3N0VXNlck1zZyBtc2cgPSB7DQogICAgICAgIC5yZXF1ZXN0ID0g VkhPU1RfVVNFUl9TRVRfTUVNX1RBQkxFLA0KICAgICAgICAuZmxhZ3MgPSBWSE9TVF9VU0VSX1ZF UlNJT04sDQogICAgfTsNCg0KKyAgICBpZiAocmVwbHlfc3VwcG9ydGVkKSB7DQorICAgICAgICBt c2cuZmxhZ3MgfD0gVkhPU1RfVVNFUl9ORUVEX1JFUExZX01BU0s7DQorICAgIH0NCisNCiAgICBm b3IgKGkgPSAwOyBpIDwgZGV2LT5tZW0tPm5yZWdpb25zOyArK2kpIHsNCiAgICAgICAgc3RydWN0 IHZob3N0X21lbW9yeV9yZWdpb24gKnJlZyA9IGRldi0+bWVtLT5yZWdpb25zICsgaTsNCiAgICAg ICAgcmFtX2FkZHJfdCBvZmZzZXQ7DQpAQCAtMjc3LDYgKzMwNSwxMCBAQCBzdGF0aWMgaW50IHZo b3N0X3VzZXJfc2V0X21lbV90YWJsZShzdHJ1Y3Qgdmhvc3RfZGV2ICpkZXYsDQoNCiAgICB2aG9z dF91c2VyX3dyaXRlKGRldiwgJm1zZywgZmRzLCBmZF9udW0pOw0KDQorICAgIGlmIChyZXBseV9z dXBwb3J0ZWQpIHsNCisgICAgICAgIHJldHVybiBwcm9jZXNzX21lc3NhZ2VfcmVwbHkoZGV2LCBt c2cucmVxdWVzdCk7DQorICAgIH0NCisNCiAgICByZXR1cm4gMDsNCn0NCg0KLS0NCjEuOC4xLjIN Cg0KDQpPdGhlciB0aGFuIHRoYXQsIGxvb2tzIGdvb2QgdG8gbWUsIHdpdGggdGhvc2UgZml4ZXMN Cg0KDQpSZXZpZXdlZC1ieTogTWFyYy1BbmRyw6kgTHVyZWF1IDxtYXJjYW5kcmUubHVyZWF1QHJl ZGhhdC5jb208bWFpbHRvOm1hcmNhbmRyZS5sdXJlYXVAcmVkaGF0LmNvbT4+DQoNCg0KDQotLQ0K TWFyYy1BbmRyw6kgTHVyZWF1DQoNCg==