From mboxrd@z Thu Jan 1 00:00:00 1970 From: Martin Wilck Subject: Re: [PATCH 11/12] multipathd: add new polling dmevents waiter thread Date: Mon, 19 Mar 2018 13:48:36 +0100 Message-ID: <1521463716.3798.44.camel@suse.com> References: <1521049605-22050-1-git-send-email-bmarzins@redhat.com> <1521049605-22050-12-git-send-email-bmarzins@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1521049605-22050-12-git-send-email-bmarzins@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dm-devel-bounces@redhat.com Errors-To: dm-devel-bounces@redhat.com To: Benjamin Marzinski , dm-devel@redhat.com Cc: christophe.varoqui@free.fr List-Id: dm-devel.ids T24gV2VkLCAyMDE4LTAzLTE0IGF0IDEyOjQ2IC0wNTAwLCBCZW5qYW1pbiBNYXJ6aW5za2kgd3Jv dGU6Cj4gVGhlIGN1cnJlbnQgbWV0aG9kIG9mIHdhaXRpbmcgZm9yIGRtZXZlbnRzIG9uIG11bHRp cGF0aCBkZXZpY2VzCj4gaW52b2x2ZXMKPiBjcmVhdGluZyBhIHNlcGVyYXRlIHRocmVhZCBmb3Ig ZWFjaCBkZXZpY2UuIFRoaXMgY2FuIGJlY29tZSB2ZXJ5Cj4gd2FzdGVmdWwgd2hlbiB0aGVyZSBh cmUgbGFyZ2UgbnVtYmVycyBvZiBtdWx0aXBhdGggZGV2aWNlcy4gQWxzbywKPiBzaW5jZQo+IG11 bHRpcGF0aGQgbmVlZHMgdG8gZ3JhYiB0aGUgdmVjcyBsb2NrIHRvIHVwZGF0ZSB0aGUgZGV2aWNl cywgdGhlCj4gYWRkaXRpb25hbCB0aHJlYWRzIGRvbid0IGFjdHVhbGx5IHByb3ZpZGUgbXVjaCBw YXJhbGxlbGlzbS4KPiAKPiBUaGUgcGF0Y2ggYWRkcyBhIG5ldyBtZXRob2Qgb2YgdXBkYXRpbmcg bXVsdGlwYXRoIGRldmljZXMgb24KPiBkbWV2ZW50cywKPiB3aGljaCB1c2VzIHRoZSBuZXcgZGV2 aWNlLW1hcHBlciBldmVudCBwb2xsaW5nIGludGVyZmFjZS4gVGhpcyBtZWFucwo+IHRoYXQgdGhl cmUgaXMgb25seSBvbmUgZG1ldmVudCB3YWl0aW5nIHRocmVhZCB3aGljaCB3aWxsIHdhaXQgZm9y Cj4gZXZlbnRzCj4gb24gYWxsIG9mIHRoZSBtdWx0aXBhdGggZGV2aWNlcy4gIEN1cnJlbnRseSB0 aGUgY29kZSB0byBnZXQgdGhlIGV2ZW50Cj4gbnVtYmVyIGZyb20gdGhlIGxpc3Qgb2YgZGV2aWNl IG5hbWVzIGFuZCB0byByZS1hcm0gdGhlIHBvbGxpbmcKPiBpbnRlcmZhY2UKPiBpcyBub3QgaW4g bGliZGV2bWFwcGVyLCBzbyB0aGUgcGF0Y2ggZG9lcyB0aGF0IHdvcmsuIE9idmlvdXNseSwgdGhl c2UKPiBiaXRzIG5lZWQgdG8gZ28gaW50byBsaWJkZXZtYXBwZXIsIHNvIHRoYXQgbXVsdGlwYXRo ZCBjYW4gdXNlIGEKPiBzdGFuZGFyZAo+IGludGVyZmFjZS4KPiAKPiBJIGhhdmVuJ3QgdG91Y2hl ZCBhbnkgb2YgdGhlIGV4aXN0aW5nIGV2ZW50IHdhaXRpbmcgY29kZSwgc2luY2UgZXZlbnQKPiBw b2xsaW5nIHdhcyBvbmx5IGFkZGVkIHRvIGRldmljZS1tYXBwZXIgaW4gdmVyc2lvbgo+IDQuMzcu MC4gIG11bHRpcGF0aGQKPiBjaGVja3MgdGhpcyB2ZXJzaW9uLCBhbmQgZGVmYXVsdHMgdG8gdXNp bmcgdGhlIHBvbGxpbmcgY29kZSBpZgo+IGRldmljZS1tYXBwZXIgc3VwcG9ydHMgaXQuIFRoaXMg Y2FuIGJlIG92ZXJyaWRkZW4gYnkgcnVubmluZwo+IG11bHRpcGF0aGQKPiB3aXRoICItdyIsIHRv IGZvcmNlIGl0IHRvIHVzZSB0aGUgb2xkIGV2ZW50IHdhaXRpbmcgY29kZS4KPiAKPiBTaWduZWQt b2ZmLWJ5OiBCZW5qYW1pbiBNYXJ6aW5za2kgPGJtYXJ6aW5zQHJlZGhhdC5jb20+CgpSZXZpZXdl ZC1ieTogTWFydGluIFdpbGNrIDxtd2lsY2tAc3VzZS5jb20+CgouLi4gd2l0aCBzb21lIG1pbm9y IG5pdHBpY2tzLCBzZWUgYmVsb3cuCgo+IC0tLQo+ICBNYWtlZmlsZS5pbmMgICAgICAgICAgICAg ICB8ICAgMyArCj4gIGxpYm11bHRpcGF0aC9zdHJ1Y3RzX3ZlYy5jIHwgICA4ICsKPiAgbGlibXVs dGlwYXRoL3N0cnVjdHNfdmVjLmggfCAgIDIgKwo+ICBtdWx0aXBhdGhkL01ha2VmaWxlICAgICAg ICB8ICAgNiArLQo+ICBtdWx0aXBhdGhkL2RtZXZlbnRzLmMgICAgICB8IDM5Mgo+ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBtdWx0aXBhdGhkL2RtZXZl bnRzLmggICAgICB8ICAxMyArKwo+ICBtdWx0aXBhdGhkL21haW4uYyAgICAgICAgICB8ICA2MiAr KysrKystCj4gIDcgZmlsZXMgY2hhbmdlZCwgNDc3IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25z KC0pCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBtdWx0aXBhdGhkL2RtZXZlbnRzLmMKPiAgY3JlYXRl IG1vZGUgMTAwNjQ0IG11bHRpcGF0aGQvZG1ldmVudHMuaAo+IAo+IAoKPiArc3RhdGljIGludCBh cm1fZG1fZXZlbnRfcG9sbChpbnQgZmQpCj4gK3sKPiArCXN0cnVjdCBkbV9pb2N0bCBkbWk7Cj4g KwltZW1zZXQoJmRtaSwgMCwgc2l6ZW9mKGRtaSkpOwo+ICsJZG1pLnZlcnNpb25bMF0gPSBETV9W RVJTSU9OX01BSk9SOwo+ICsJZG1pLnZlcnNpb25bMV0gPSBETV9WRVJTSU9OX01JTk9SOwo+ICsJ ZG1pLnZlcnNpb25bMl0gPSBETV9WRVJTSU9OX1BBVENITEVWRUw7Cj4gKwlkbWkuZmxhZ3MgPSAw eDQ7CgpXZSd2ZSBoYWQgdGhpcyBiZWZvcmUsIEknZCBhcHByZWNpYXRlIGEgc2hvcnQgY29tbWVu dCBleHBsYWluaW5nIHRoaXMKZmxhZyBhcyBBbGFzZGFpciBkaWQgaW4gaGlzIHBvc3QgZnJvbSBG ZWIgMTN0aC4KCj4gKwo+ICsvKiBZb3UgbXVzdCBjYWxsIHVwZGF0ZV9tdWx0aXBhdGgoKSBhZnRl ciBjYWxsaW5nIHRoaXMgZnVuY3Rpb24sIHRvCj4gKyAqIGRlYWwgd2l0aCBhbnkgZXZlbnRzIHRo YXQgY2FtZSBpbiBiZWZvcmUgdGhlIGRldmljZSB3YXMgYWRkZWQgKi8KClRoaXMgY29tbWVudCBp cyBzbGlnaHRseSBpcnJpdGF0aW5nLCBiZWNhdXNlIHlvdSBkb24ndCBjYWxsCnVwZGF0ZV9tdWx0 aXBhdGgoKSBhbnl3aGVyZSB3aGVyZSB5b3UgY2FsbCB3YXRjaF9kbWV2ZW50cyAocmF0aGVyLCB5 b3UKY2FsbCBfX3NldHVwX211bHRpcGF0aCkuIEkgdW5kZXJzdGFuZCB0aGUgY29tbWVudCBpcyBh Ym91dCB0aGUgb3JkZXIgb2YKY2FsbHMsIG5vdCBhYm91dCBoYXZpbmcgdG8gY2FsbCB1cGRhdGVf bXVsdGlwYXRoKCksIGJ1dCB0aGF0J3Mgbm90CmltbWVkaWF0ZWx5IG9idmlvdXMuCgo+ICtpbnQg d2F0Y2hfZG1ldmVudHMoY2hhciAqbmFtZSkKPiArewo+ICsJaW50IGV2ZW50X25yOwo+ICsJc3Ry dWN0IGRldl9ldmVudCAqZGV2X2V2dCwgKm9sZF9kZXZfZXZ0Owo+ICsJaW50IGk7Cj4gKwo+ICsJ aWYgKCFkbV9pc19tcGF0aChuYW1lKSkgewo+ICsJCWNvbmRsb2coMCwgIiVzOiBub3QgYSBtdWx0 aXBhdGggZGV2aWNlLiBjYW4ndCB3YXRjaAo+IGV2ZW50cyIsCj4gKwkJCW5hbWUpOwo+ICsJCXJl dHVybiAtMTsKPiArCX0KPiArCj4gKwlpZiAoKGV2ZW50X25yID0gZG1fZ2V0ZXZlbnRucihuYW1l KSkgPCAwKQo+ICsJCXJldHVybiAtMTsKPiArCj4gKwlkZXZfZXZ0ID0gKHN0cnVjdCBkZXZfZXZl bnQgKiltYWxsb2Moc2l6ZW9mKHN0cnVjdAo+IGRldl9ldmVudCkpOwo+ICsJaWYgKCFkZXZfZXZ0 KSB7Cj4gKwkJY29uZGxvZygwLCAiJXM6IGNhbid0IGFsbG9jYXRlIGV2ZW50IHdhaXRlcgo+IHN0 cnVjdHVyZSIsIG5hbWUpOwo+ICsJCXJldHVybiAtMTsKPiArCX0KPiArCj4gKwlzdHJuY3B5KGRl dl9ldnQtPm5hbWUsIG5hbWUsIFdXSURfU0laRSk7Cj4gKwlkZXZfZXZ0LT5uYW1lW1dXSURfU0la RSAtIDFdID0gMDsKCk5pdHBpY2s6IHVzaW5nIHN0cmxjcHkoKSBpbiBuZXcgY29kZSB3b3VsZCBz aW1wbGlmeSBjb2RlIGFuZCByZXZpZXcuCgo+ICsJZGV2X2V2dC0+ZXZ0X25yID0gZXZlbnRfbnI7 Cj4gKwlkZXZfZXZ0LT5hY3Rpb24gPSBFVkVOVF9OT1RISU5HOwo+ICsKPiArCXB0aHJlYWRfbXV0 ZXhfbG9jaygmd2FpdGVyLT5ldmVudHNfbG9jayk7Cj4gKwl2ZWN0b3JfZm9yZWFjaF9zbG90KHdh aXRlci0+ZXZlbnRzLCBvbGRfZGV2X2V2dCwgaSl7Cj4gKwkJaWYgKCFzdHJjbXAoZGV2X2V2dC0+ bmFtZSwgb2xkX2Rldl9ldnQtPm5hbWUpKSB7Cj4gKwkJCS8qIGNhbGxlciB3aWxsIGJlIHVwZGF0 aW5nIHRoaXMgZGV2aWNlICovCj4gKwkJCW9sZF9kZXZfZXZ0LT5ldnRfbnIgPSBldmVudF9ucjsK PiArCQkJb2xkX2Rldl9ldnQtPmFjdGlvbiA9IEVWRU5UX05PVEhJTkc7Cj4gKwkJCXB0aHJlYWRf bXV0ZXhfdW5sb2NrKCZ3YWl0ZXItPmV2ZW50c19sb2NrKTsKPiArCQkJY29uZGxvZygyLCAiJXM6 IGFscmVhZHkgd2FpdGluZyBmb3IgZXZlbnRzCj4gb24gZGV2aWNlIiwKPiArCQkJCW5hbWUpOwoK V2hhdCBhYm91dCB1c2luZyBjb25kbG9nKDMpIGhlcmU/IElzIGl0IHNvbWV0aGluZyBhZG1pbnMg bmVlZCB0byBjYXJlCmFib3V0IGluIHJlZ3VsYXIgb3BlcmF0aW9uPwoKPiArCQkJZnJlZShkZXZf ZXZ0KTsKPiArCQkJcmV0dXJuIDA7Cj4gKwkJfQo+ICsJfQo+ICsJaWYgKCF2ZWN0b3JfYWxsb2Nf c2xvdCh3YWl0ZXItPmV2ZW50cykpIHsKPiArCQlwdGhyZWFkX211dGV4X3VubG9jaygmd2FpdGVy LT5ldmVudHNfbG9jayk7Cj4gKwkJZnJlZShkZXZfZXZ0KTsKPiArCQlyZXR1cm4gLTE7Cj4gKwl9 Cj4gKwl2ZWN0b3Jfc2V0X3Nsb3Qod2FpdGVyLT5ldmVudHMsIGRldl9ldnQpOwo+ICsJcHRocmVh ZF9tdXRleF91bmxvY2soJndhaXRlci0+ZXZlbnRzX2xvY2spOwo+ICsJcmV0dXJuIDA7Cj4gK30K Cj4gKy8qCj4gKyAqIHJldHVybnMgdGhlIHJlc2NoZWR1bGUgZGVsYXkKPiArICogbmVnYXRpdmUg bWVhbnMgKnN0b3AqCj4gKyAqLwo+ICsKPiArLyogcG9sbCwgYXJtLCB1cGRhdGUsIHJldHVybiAq Lwo+ICtzdGF0aWMgaW50IGRtZXZlbnRfbG9vcCAodm9pZCkKPiArewo+ICsJaW50IHIsIGkgPSAw Owo+ICsJc3RydWN0IHBvbGxmZCBwZmQ7Cj4gKwlzdHJ1Y3QgZGV2X2V2ZW50ICpkZXZfZXZ0Owo+ ICsKPiArCXBmZC5mZCA9IHdhaXRlci0+ZmQ7Cj4gKwlwZmQuZXZlbnRzID0gUE9MTElOOwo+ICsJ ciA9IHBvbGwoJnBmZCwgMSwgLTEpOwo+ICsJaWYgKHIgPD0gMCkgewo+ICsJCWNvbmRsb2coMCwg ImZhaWxlZCBwb2xsaW5nIGZvciBkbSBldmVudHM6ICVzIiwKPiBzdHJlcnJvcihlcnJubykpOwo+ ICsJCS8qIHNsZWVwIDFzIGFuZCBob3BlIHRoaW5ncyBnZXQgYmV0dGVyICovCj4gKwkJcmV0dXJu IDE7Cj4gKwl9Cj4gKwo+ICsJaWYgKGFybV9kbV9ldmVudF9wb2xsKHdhaXRlci0+ZmQpICE9IDAp IHsKPiArCQljb25kbG9nKDAsICJDYW5ub3QgcmUtYXJtIGV2ZW50IHBvbGxpbmc6ICVzIiwKPiBz dHJlcnJvcihlcnJubykpOwo+ICsJCS8qIHNsZWVwIDFzIGFuZCBob3BlIHRoaW5ncyBnZXQgYmV0 dGVyICovCj4gKwkJcmV0dXJuIDE7Cj4gKwl9Cj4gKwo+ICsJaWYgKGRtX2dldF9ldmVudHMoKSAh PSAwKSB7Cj4gKwkJY29uZGxvZygwLCAiZmFpbGVkIGdldHRpbmcgZG0gZXZlbnRzOiAlcyIsCj4g c3RyZXJyb3IoZXJybm8pKTsKPiArCQkvKiBzbGVlcCAxcyBhbmQgaG9wZSB0aGluZ3MgZ2V0IGJl dHRlciAqLwo+ICsJCXJldHVybiAxOwo+ICsJfQo+ICsKPiArCS8qCj4gKwkgKiB1cG9uIGV2ZW50 IC4uLgo+ICsJICovCj4gKwo+ICsJd2hpbGUgKDEpIHsKPiArCQlpbnQgZG9uZSA9IDE7Cj4gKwkJ c3RydWN0IGRldl9ldmVudCBjdXJyX2RldjsKPiArCj4gKwkJcHRocmVhZF9tdXRleF9sb2NrKCZ3 YWl0ZXItPmV2ZW50c19sb2NrKTsKPiArCQl2ZWN0b3JfZm9yZWFjaF9zbG90KHdhaXRlci0+ZXZl bnRzLCBkZXZfZXZ0LCBpKSB7Cj4gKwkJCWlmIChkZXZfZXZ0LT5hY3Rpb24gIT0gRVZFTlRfTk9U SElORykgewo+ICsJCQkJY3Vycl9kZXYgPSAqZGV2X2V2dDsKPiArCQkJCWlmIChkZXZfZXZ0LT5h Y3Rpb24gPT0gRVZFTlRfUkVNT1ZFKQo+IHsKPiArCQkJCQl2ZWN0b3JfZGVsX3Nsb3Qod2FpdGVy LQo+ID5ldmVudHMsIGkpOwo+ICsJCQkJCWZyZWUoZGV2X2V2dCk7Cj4gKwkJCQl9IGVsc2UKPiAr CQkJCQlkZXZfZXZ0LT5hY3Rpb24gPQo+IEVWRU5UX05PVEhJTkc7Cj4gKwkJCQlkb25lID0gMDsK PiArCQkJCWJyZWFrOwo+ICsJCQl9Cj4gKwkJfQo+ICsJCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZ3 YWl0ZXItPmV2ZW50c19sb2NrKTsKPiArCQlpZiAoZG9uZSkKPiArCQkJcmV0dXJuIDE7Cj4gKwo+ ICsJCWNvbmRsb2coMywgIiVzOiBkZXZtYXAgZXZlbnQgIyVpIiwgY3Vycl9kZXYubmFtZSwKPiAr CQkJY3Vycl9kZXYuZXZ0X25yKTsKPiArCj4gKwkJLyoKPiArCQkgKiBldmVudCBtaWdodCBiZSA6 Cj4gKwkJICoKPiArCQkgKiAxKSBhIHRhYmxlIHJlbG9hZCwgd2hpY2ggbWVhbnMgb3VyIG1wcCBz dHJ1Y3R1cmUKPiBpcwo+ICsJCSAqICAgIG9ic29sZXRlIDogcmVmcmVzaCBpdCB0aHJvdWdoCj4g dXBkYXRlX211bHRpcGF0aCgpCj4gKwkJICogMikgYSBwYXRoIGZhaWxlZCBieSBETSA6IG1hcmsg YXMgc3VjaCB0aHJvdWdoCj4gKwkJICogICAgdXBkYXRlX211bHRpcGF0aCgpCj4gKwkJICogMykg bWFwIGhhcyBnb25lIGF3YXkgOiBzdG9wIHRoZSB0aHJlYWQuCj4gKwkJICogNCkgYSBwYXRoIHJl aW5zdGF0ZSA6IG5vdGhpbmcgdG8gZG8KPiArCQkgKiA1KSBhIHN3aXRjaCBncm91cCA6IG5vdGhp bmcgdG8gZG8KPiArCQkgKi8KPiArCQlwdGhyZWFkX2NsZWFudXBfcHVzaChjbGVhbnVwX2xvY2ss ICZ3YWl0ZXItPnZlY3MtCj4gPmxvY2spOwo+ICsJCWxvY2soJndhaXRlci0+dmVjcy0+bG9jayk7 Cj4gKwkJcHRocmVhZF90ZXN0Y2FuY2VsKCk7Cj4gKwkJciA9IDA7Cj4gKwkJaWYgKGN1cnJfZGV2 LmFjdGlvbiA9PSBFVkVOVF9SRU1PVkUpCj4gKwkJCXJlbW92ZV9tYXBfYnlfYWxpYXMoY3Vycl9k ZXYubmFtZSwgd2FpdGVyLQo+ID52ZWNzLCAxKTsKPiArCQllbHNlCj4gKwkJCXIgPSB1cGRhdGVf bXVsdGlwYXRoKHdhaXRlci0+dmVjcywKPiBjdXJyX2Rldi5uYW1lLCAxKTsKPiArCQlsb2NrX2Ns ZWFudXBfcG9wKCZ3YWl0ZXItPnZlY3MtPmxvY2spOwoKSSBkaXNsaWtlIGxvY2tfY2xlYW51cF9w b3AoKS4gcHRocmVhZF9jbGVhbnVwX3BvcCgxKSB3b3VsZCBiZSBzbyBtdWNoCm1vcmUgb2J2aW91 cy4KClJlZ2FyZHMsCk1hcnRpbgoKLS0gCkRyLiBNYXJ0aW4gV2lsY2sgPG13aWxja0BzdXNlLmNv bT4sIFRlbC4gKzQ5ICgwKTkxMSA3NDA1MyAyMTA3ClNVU0UgTGludXggR21iSCwgR0Y6IEZlbGl4 IEltZW5kw7ZyZmZlciwgSmFuZSBTbWl0aGFyZCwgR3JhaGFtIE5vcnRvbgpIUkIgMjEyODQgKEFH IE7DvHJuYmVyZykKCi0tCmRtLWRldmVsIG1haWxpbmcgbGlzdApkbS1kZXZlbEByZWRoYXQuY29t Cmh0dHBzOi8vd3d3LnJlZGhhdC5jb20vbWFpbG1hbi9saXN0aW5mby9kbS1kZXZlbA==