From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:52869) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gr3hH-0007AK-FT for qemu-devel@nongnu.org; Tue, 05 Feb 2019 11:35:44 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gr3h5-0005d0-J7 for qemu-devel@nongnu.org; Tue, 05 Feb 2019 11:35:36 -0500 From: Vladimir Sementsov-Ogievskiy Date: Tue, 5 Feb 2019 16:35:13 +0000 Message-ID: <261d4eb9-eb91-5654-e5ad-995b7f93432b@virtuozzo.com> References: <20180731173033.75467-1-vsementsov@virtuozzo.com> <20180731173033.75467-7-vsementsov@virtuozzo.com> <64d9a2e7-6dd9-d71b-b9bf-c476e9e218f8@redhat.com> <20190116165837.GF20275@redhat.com> In-Reply-To: <20190116165837.GF20275@redhat.com> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH v4 06/10] block/nbd-client: move from quit to state List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?utf-8?B?RGFuaWVsIFAuIEJlcnJhbmfDqQ==?= , Eric Blake Cc: "qemu-devel@nongnu.org" , "qemu-block@nongnu.org" , "armbru@redhat.com" , "mreitz@redhat.com" , "kwolf@redhat.com" , "pbonzini@redhat.com" , Denis Lunev MTYuMDEuMjAxOSAxOTo1OCwgRGFuaWVsIFAuIEJlcnJhbmfDqSB3cm90ZToNCj4gT24gV2VkLCBK YW4gMTYsIDIwMTkgYXQgMTA6MjU6MDNBTSAtMDYwMCwgRXJpYyBCbGFrZSB3cm90ZToNCj4+IFth ZGRpbmcgRGFuXQ0KPj4NCj4+IE9uIDcvMzEvMTggMTI6MzAgUE0sIFZsYWRpbWlyIFNlbWVudHNv di1PZ2lldnNraXkgd3JvdGU6DQo+Pj4gVG8gaW1wbGVtZW50IHJlY29ubmVjdCB3ZSBuZWVkIHNl dmVyYWwgc3RhdGVzIGZvciB0aGUgY2xpZW50Og0KPj4+IENPTk5FQ1RFRCwgUVVJVCBhbmQgdHdv IENPTk5FQ1RJTkcgc3RhdGVzLiBDT05ORUNUSU5HIHN0YXRlcyB3aWxsDQo+Pj4gYmUgcmVhbGl6 ZWQgaW4gdGhlIGZvbGxvd2luZyBwYXRjaGVzLiBUaGlzIHBhdGNoIGltcGxlbWVudHMgQ09OTkVD VEVEDQo+Pj4gYW5kIFFVSVQuDQo+Pj4NCj4+PiBRVUlUIG1lYW5zLCB0aGF0IHdlIHNob3VsZCBj bG9zZSB0aGUgY29ubmVjdGlvbiBhbmQgZmFpbCBhbGwgY3VycmVudA0KPj4+IGFuZCBmdXJ0aGVy IHJlcXVlc3RzIChsaWtlIG9sZCBxdWl0ID0gdHJ1ZSkuDQo+Pj4NCj4+PiBDT05ORUNURUQgbWVh bnMgdGhhdCBjb25uZWN0aW9uIGlzIG9rLCB3ZSBjYW4gc2VuZCByZXF1ZXN0cyAobGlrZSBvbGQN Cj4+PiBxdWl0ID0gZmFsc2UpLg0KPj4+DQo+Pj4gRm9yIHJlY2VpdmluZyBsb29wIHdlIHVzZSBh IGNvbXBhcmlzb24gb2YgdGhlIGN1cnJlbnQgc3RhdGUgd2l0aCBRVUlULA0KPj4+IGJlY2F1c2Ug cmVjb25uZWN0IHdpbGwgYmUgaW4gdGhlIHNhbWUgbG9vcCwgc28gaXQgc2hvdWxkIGJlIGxvb3Bp bmcNCj4+PiB1bnRpbCB0aGUgZW5kLg0KPj4+DQo+Pj4gT3Bwb3NpdGUsIGZvciByZXF1ZXN0cyB3 ZSB1c2UgYSBjb21wYXJpc29uIG9mIHRoZSBjdXJyZW50IHN0YXRlIHdpdGgNCj4+PiBDT05ORUNU RUQsIGFzIHdlIGRvbid0IHdhbnQgdG8gc2VuZCByZXF1ZXN0cyBpbiBDT05ORUNUSU5HIHN0YXRl cyAoDQo+Pj4gd2hpY2ggYXJlIHVucmVhY2hhYmxlIG5vdywgYnV0IHdpbGwgYmUgcmVhY2hhYmxl IGFmdGVyIHRoZSBmb2xsb3dpbmcNCj4+PiBjb21taXRzKQ0KPj4+DQo+Pj4gU2lnbmVkLW9mZi1i eTogVmxhZGltaXIgU2VtZW50c292LU9naWV2c2tpeSA8dnNlbWVudHNvdkB2aXJ0dW96em8uY29t Pg0KPj4+IC0tLQ0KPj4+ICAgYmxvY2svbmJkLWNsaWVudC5oIHwgIDkgKysrKysrKystDQo+Pj4g ICBibG9jay9uYmQtY2xpZW50LmMgfCA1NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4+PiAgIDIgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0 aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pDQo+Pg0KPj4gRGFuIGp1c3QgcmVjZW50bHkgcHJvcG9z ZWQgcGF0Y2hlcyB0byBTb2NrZXRDaGFyZGV2IGluIGdlbmVyYWwgdG8gdXNlIGENCj4+IHN0YXRl IG1hY2hpbmUgdGhhdCBkaXN0aW5ndWlzaGVzIGJldHdlZW4gY29ubmVjdGluZyBhbmQgY29ubmVj dGVkOg0KPj4NCj4+IGh0dHBzOi8vbGlzdHMuZ251Lm9yZy9hcmNoaXZlL2h0bWwvcWVtdS1kZXZl bC8yMDE5LTAxL21zZzAzMzM5Lmh0bWwNCj4+DQo+PiBJJ20gd29uZGVyaW5nIGhvdyBtdWNoIG9m IGhpcyB3b3JrIGlzIHJlbGF0ZWQgb3IgY2FuIGJlIHJldXNlZCB0byBnZXQNCj4+IHJlc3RhcnRh YmxlIGNvbm5lY3Rpb25zIG9uIE5CRCBzb2NrZXRzPw0KPiANCj4gVGhlcmUncyBub3RoaW5nIHJl YWxseSBzcGVjaWFsIGFib3V0IHdoYXQgSSBkaWQuIFZsYWRpbWlyIGxvb2tzIHRvDQo+IGhhdmUg YmFzaWNhbGx5IGRvbmUgdGhlIHNhbWUga2luZCBvZiBhcHByb2FjaCwgYnV0IEkgZG9uJ3QgdGhp bmsNCj4gdGhlcmUncyByZWFsIHNjb3BlIGZvciBzaGFyaW5nIHdpdGggY2hhcmRldnMsIGFzIGVh Y2ggY2FyZSBhYm91dA0KPiB0aGVpciBvd24gc2V0IG9mIHN0YXRlcy4NCj4gDQo+PiBSZW1lbWJl ciwgcmlnaHQgbm93LCB0aGUgTkJEIGNvZGUgYWx3YXlzIHN0YXJ0cyBpbiBibG9ja2luZyBtb2Rl LCBhbmQNCj4+IGRvZXMgc2luZ2xlLXRocmVhZGVkIGhhbmRzaGFraW5nIHVudGlsIGl0IGlzIHJl YWR5IGZvciB0cmFuc21pc3Npb24sDQo+PiB0aGVuIHN3aXRjaGVzIHRvIG5vbi1ibG9ja2luZyBt b2RlIGZvciBhbGwgc3Vic2VxdWVudCB0cmFuc21pc3Npb25zIChzbywNCj4+IGZvciBleGFtcGxl LCBzZXJ2aWNpbmcgYSByZWFkIHJlcXVlc3QgY2FuIGFzc3VtZSB0aGF0IHRoZSBzb2NrZXQgaXMN Cj4+IHZhbGlkIHdpdGhvdXQgZnVydGhlciB3YWl0aW5nKS4gIEJ1dCBvbmNlIHdlIHN0YXJ0IGFs bG93aW5nIHJlY29ubmVjdHMsDQo+PiBhIHJlYWQgcmVxdWVzdCB3aWxsIG5lZWQgdG8gZGV0ZWN0 IHdoZW4gb25lIHNvY2tldCBoYXMgZ29uZSBkb3duLCBhbmQNCj4+IHdhaXQgZm9yIGl0cyByZXBs YWNlbWVudCBzb2NrZXQgdG8gY29tZSBiYWNrIHVwLCBpbiBvcmRlciB0byByZXRyeSB0aGUNCj4+ IHJlcXVlc3Q7IHRoaXMgcmV0cnkgaXMgaW4gYSBjb250ZXh0IHdoZXJlIHdlIGFyZSBpbiBub24t YmxvY2tpbmcNCj4+IGNvbnRleHQsIGJ1dCB0aGUgcmV0cnkgbXVzdCBlc3RhYmxpc2ggYSBuZXcg c29ja2V0LCBhbmQgcG9zc2libHkgY29udmVydA0KPj4gdGhlIHNvY2tldCBpbnRvIFRMUyBtb2Rl LCBhbGwgYmVmb3JlIGJlaW5nIHJlYWR5IHRvIHJldHJ5IHRoZSByZWFkIHJlcXVlc3QuDQo+IA0K PiBUaGF0IG1ha2VzIGl0IHNvdW5kIGxpa2UgdGhlIE5CRCBoYW5kc2hha2UgbmVlZHMgdG8gYmUg Y29udmVydGVkIHRvDQo+IHVzZSBlbnRpcmVseSBub24tYmxvY2tpbmcgSS9PLg0KPiANCj4gVGhl IFRMUyBoYW5kc2hha2UgYWxyZWFkeSB1c2VzIGFuIGFzeW5jaHJvbm91cyBjYWxsYmFjayBwYXR0 ZXJuIGFuZA0KPiB0byBkZWFsIHdpdGggdGhhdCBOQkQgaGFkIHRvIGNyZWF0ZSAmIHJ1biBhIHBy aXZhdGUgbWFpbiBsb29wIHRvDQo+IGNvbXBsZXRlIHRoZSBUTFMgaGFuZHNoYWtlIGluIGl0cyBi bG9ja2luZyBjb2RlIHBhdHRlcm4uDQo+IA0KPiBZb3UgY291bGQgcG90ZW50aWFsbHkgcHVzaCB0 aGlzIGNvbmNlcHQgdXAgdG8gdGhlIHRvcCBsZXZlbC4gaWUNCj4gaW1wbGVtZW50IHRoZSBlbnRp cmUgTkJEIGhhbmRzaGFrZSB3aXRoIGFzeW5jIGNhbGxiYWNrcyAvIG5vbi1ibG9ja2luZw0KPiBJ L08uIFRoZW4gc2ltcGx5IHVzZSBhIHByaXZhdGUgbWFpbiBsb29wIHRvIHJ1biB0aGF0IGluIGEg YmxvY2tpbmcNCj4gZmFzaGlvbiBmb3IgdGhlIGluaXRpYWwgY29ubmVjdGlvbi4gV2hlbiB5b3Ug bmVlZCB0byBkbyByZS1jb25uZWN0DQo+IHlvdSBub3cganVzdCBydW4gdGhlIGFzeW5jIGNvZGUg d2l0aG91dCB0aGUgZXh0cmEgbWFpbiBsb29wIGFyb3VuZA0KPiBpdC4NCj4gDQoNCkhtbSwgeW91 IG1lYW4gdGhpcyBjb2RlOg0KDQogICAgIGRhdGEubG9vcCA9IGdfbWFpbl9sb29wX25ldyhnX21h aW5fY29udGV4dF9kZWZhdWx0KCksIEZBTFNFKTsNCiAgICAgdHJhY2VfbmJkX3JlY2VpdmVfc3Rh cnR0bHNfdGxzX2hhbmRzaGFrZSgpOw0KICAgICBxaW9fY2hhbm5lbF90bHNfaGFuZHNoYWtlKHRp b2MsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmJkX3Rsc19oYW5kc2hha2UsDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRhdGEsDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsN Cg0KICAgICBpZiAoIWRhdGEuY29tcGxldGUpIHsNCiAgICAgICAgIGdfbWFpbl9sb29wX3J1bihk YXRhLmxvb3ApOw0KICAgICB9DQogICAgIGdfbWFpbl9sb29wX3VucmVmKGRhdGEubG9vcCk7DQoN Cg0KV2hhdCB0aGlzIGRvZXMgaW4gY29udGV4dCBvZiBRZW11PyBJc24ndCBpdCBtb3JlIGNvcnJl Y3QgdG8gZG8NCmNvcm91dGluZSBiYXNlZCBhc3luYyBzdGFmZiwgbGlrZSBpbiBxY293Ml9vcGVu KCk6DQoNCiAgICAgaWYgKHFlbXVfaW5fY29yb3V0aW5lKCkpIHsNCiAgICAgICAgIC8qIEZyb20g YmRydl9jb19jcmVhdGUuICAqLw0KICAgICAgICAgcWNvdzJfb3Blbl9lbnRyeSgmcW9jKTsNCiAg ICAgfSBlbHNlIHsNCiAgICAgICAgIGFzc2VydChxZW11X2dldF9jdXJyZW50X2Fpb19jb250ZXh0 KCkgPT0gcWVtdV9nZXRfYWlvX2NvbnRleHQoKSk7DQogICAgICAgICBxZW11X2Nvcm91dGluZV9l bnRlcihxZW11X2Nvcm91dGluZV9jcmVhdGUocWNvdzJfb3Blbl9lbnRyeSwgJnFvYykpOw0KICAg ICAgICAgQkRSVl9QT0xMX1dISUxFKGJzLCBxb2MucmV0ID09IC1FSU5QUk9HUkVTUyk7DQogICAg IH0NCiAgICAgcmV0dXJuIHFvYy5yZXQ7DQoNCkFuZCB0aGVuIHlpZWxkIGFmdGVyIGhhbmRzaGFr ZSgpIGFuZCBlbnRlciBiYWNrIGZyb20gbmJkX3Rsc19oYW5kc2hha2UgY2FsbGJhY2s/DQoNCkht bSwgYWxzbywgY2hlY2tlZCwgbm9ib2R5IGNhbGxzIGdfbWFpbl9jb250ZXh0X2RlZmF1bHQoKSBp biBxZW11LCBleGNlcHQNCnV0aWwvbWFpbi1sb29wLmMsIG5iZCBhbmQgdGVzdHMuIFNvLCBJJ20g bm90IHN1cmUgdGhhdCB0aGlzIGlzIGEgdmFsaWQgdGhpbmcNCnRvIGRvIGluIG5iZC4uDQoNCg0K LS0gDQpCZXN0IHJlZ2FyZHMsDQpWbGFkaW1pcg0K