From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jun'ichi Nomura" Subject: [PATCH] multipath-tools: prevent unexpected swapping of underlying LUNs Date: Fri, 17 Aug 2012 17:40:39 +0900 Message-ID: <502E0387.5070808@ce.jp.nec.com> References: <5007C043.4000006@ce.jp.nec.com> Reply-To: device-mapper development Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <5007C043.4000006@ce.jp.nec.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: dm-devel@redhat.com, christophe.varoqui@gmail.com List-Id: dm-devel.ids V2hlbiB5b3Ugd2FudCB0byByZW5hbWUgYSBtdWx0aXBhdGggZGV2aWNlCmJ1dCB0aGUgbmV3IGFs aWFzIGlzIGFscmVhZHkgdXNlZCBieSBvdGhlciBtdWx0aXBhdGggZGV2aWNlLAptdWx0aXBhdGgt dG9vbHMgbWlzdGFrZW5seSByZWxvYWQgYSB0YWJsZSBmb3IgdGhlIG9yaWdpbmFsIG11bHRpcGF0 aCBkZXZpY2UKdG8gdGhlIG90aGVyIG11bHRpcGF0aCBkZXZpY2UuClRoYXQgY291bGQgbGVhZCB0 byB2ZXJ5IGJhZCByZXN1bHQsIHN1Y2ggYXMgSS9PIGVycm9yIGFuZCBkYXRhIGNvcnJ1cHRpb24u CgpUaGlzIHBhdGNoIGNoZWNrcyBzdWNoIGEgY29uZGl0aW9uIGFuZCBnaXZlcyB1cCByZW5hbWlu ZyB3aXRoIGVycm9yIGxvZy4KCkZvciBleGFtcGxlLCBzdXBwb3NlIHlvdSBoYXZlIGZvbGxvd2lu ZyAnYmluZGluZ3MnIGZpbGU6CiAgIAogICAjIGNhdCAvZXRjL211bHRpcGF0aC9iaW5kaW5ncyAK ICAgbXBhdGhhIDIxMjE0MDA4NGFiY2QwMDAwCiAgIG1wYXRoYiAyMTIxNTAwODRhYmNkMDAwMAoK YW5kIGEgbG9naWNhbCB2b2x1bWUgJ1ZHL0xWMCcgb24gdG9wIG9mIG1wYXRoYiwKd2hpY2ggaXMg b24gdG9wIG9mIC9kZXYvc2RlKDg6NjQpIGFuZCAvZGV2L3Nkayg4OjE2MCk6CgogICAjIGRtc2V0 dXAgbHMgLS10cmVlCiAgIG1wYXRoYSAoMjUzOjEpCiAgICDilJzilIAgKDg6MTQ0KQogICAg4pSU 4pSAICg4OjQ4KQogICBWRy1MVjAgKDI1MzoyKQogICAg4pSU4pSAbXBhdGhiICgyNTM6MCkKICAg ICAgIOKUnOKUgCAoODoxNjApCiAgICAgICDilJTilIAgKDg6NjQpCgpUaGVuIHlvdSBkZWNpZGUg dG8gc3dhcCB0aGVpciBuYW1lcyBhbmQgY2hhbmdlIHRoZSAnYmluZGluZ3MnIGFzIGZvbGxvd3M6 CgogICAjIGNhdCAvZXRjL211bHRpcGF0aC9iaW5kaW5ncyAKICAgbXBhdGhiIDIxMjE0MDA4NGFi Y2QwMDAwCiAgIG1wYXRoYSAyMTIxNTAwODRhYmNkMDAwMAoKeW91J2xsIGdldCB0aGlzIGFmdGVy ICdzZXJ2aWNlIG11bHRpcGF0aGQgcmVsb2FkJzoKCiAgICMgZG1zZXR1cCBscyAtLXRyZWUKICAg bXBhdGhhICgyNTM6MSkKICAgIOKUnOKUgCAoODoxNjApCiAgICDilJTilIAgKDg6NjQpCiAgIFZH LUxWMCAoMjUzOjIpCiAgICDilJTilIBtcGF0aGIgKDI1MzowKQogICAgICAg4pSc4pSAICg4OjE0 NCkKICAgICAgIOKUlOKUgCAoODo0OCkKCk5vdyB5b3Ugc3VkZGVubHkgaGF2ZSAnVkcvTFYwJyBv biB0b3Agb2YgL2Rldi9zZGQoODo0OCkgYW5kIC9kZXYvc2RqKDg6MTQ0KSwKdGhhdCBpcyBvYnZp b3VzbHkgd3JvbmcgYW5kIHdpbGwgY29ycnVwdCBkYXRhIGlmIHlvdSB3cml0ZSB0byAnVkcvTFYw Jy4KCgpkaWZmIC11cnBOIG11bHRpcGF0aC10b29scy5vcmlnL2xpYm11bHRpcGF0aC9jb25maWd1 cmUuYyBtdWx0aXBhdGgtdG9vbHMubmV3L2xpYm11bHRpcGF0aC9jb25maWd1cmUuYwotLS0gbXVs dGlwYXRoLXRvb2xzLm9yaWcvbGlibXVsdGlwYXRoL2NvbmZpZ3VyZS5jCTIwMTItMDctMTkgMTU6 MTc6NDAuMzY4NjIyMzU4ICswOTAwCisrKyBtdWx0aXBhdGgtdG9vbHMubmV3L2xpYm11bHRpcGF0 aC9jb25maWd1cmUuYwkyMDEyLTA4LTE3IDE3OjExOjA3LjY5MTg5ODc3NCArMDkwMApAQCAtMTUw LDEyICsxNTAsMTIgQEAgc3RhdGljIHZvaWQKIHNlbGVjdF9hY3Rpb24gKHN0cnVjdCBtdWx0aXBh dGggKiBtcHAsIHZlY3RvciBjdXJtcCwgaW50IGZvcmNlX3JlbG9hZCkKIHsKIAlzdHJ1Y3QgbXVs dGlwYXRoICogY21wcDsKKwlzdHJ1Y3QgbXVsdGlwYXRoICogY21wcF9ieV9uYW1lOwogCi0JY21w cCA9IGZpbmRfbXBfYnlfYWxpYXMoY3VybXAsIG1wcC0+YWxpYXMpOwotCi0JaWYgKCFjbXBwKSB7 Ci0JCWNtcHAgPSBmaW5kX21wX2J5X3d3aWQoY3VybXAsIG1wcC0+d3dpZCk7CisJY21wcCA9IGZp bmRfbXBfYnlfd3dpZChjdXJtcCwgbXBwLT53d2lkKTsKKwljbXBwX2J5X25hbWUgPSBmaW5kX21w X2J5X2FsaWFzKGN1cm1wLCBtcHAtPmFsaWFzKTsKIAorCWlmICghY21wcF9ieV9uYW1lKSB7CiAJ CWlmIChjbXBwKSB7CiAJCQljb25kbG9nKDIsICIlczogcmVuYW1lICVzIHRvICVzIiwgbXBwLT53 d2lkLAogCQkJCWNtcHAtPmFsaWFzLCBtcHAtPmFsaWFzKTsKQEAgLTE2OSwxNyArMTY5LDI1IEBA IHNlbGVjdF9hY3Rpb24gKHN0cnVjdCBtdWx0aXBhdGggKiBtcHAsIHYKIAkJcmV0dXJuOwogCX0K IAotCWlmICghZmluZF9tcF9ieV93d2lkKGN1cm1wLCBtcHAtPnd3aWQpKSB7Ci0JCWNvbmRsb2co MiwgIiVzOiByZW1vdmUgKHd3aWQgY2hhbmdlZCkiLCBjbXBwLT5hbGlhcyk7CisJaWYgKCFjbXBw KSB7CisJCWNvbmRsb2coMiwgIiVzOiByZW1vdmUgKHd3aWQgY2hhbmdlZCkiLCBtcHAtPmFsaWFz KTsKIAkJZG1fZmx1c2hfbWFwKG1wcC0+YWxpYXMpOwotCQlzdHJuY3B5KGNtcHAtPnd3aWQsIG1w cC0+d3dpZCwgV1dJRF9TSVpFKTsKLQkJZHJvcF9tdWx0aXBhdGgoY3VybXAsIGNtcHAtPnd3aWQs IEtFRVBfUEFUSFMpOworCQlzdHJuY3B5KGNtcHBfYnlfbmFtZS0+d3dpZCwgbXBwLT53d2lkLCBX V0lEX1NJWkUpOworCQlkcm9wX211bHRpcGF0aChjdXJtcCwgY21wcF9ieV9uYW1lLT53d2lkLCBL RUVQX1BBVEhTKTsKIAkJbXBwLT5hY3Rpb24gPSBBQ1RfQ1JFQVRFOwogCQljb25kbG9nKDMsICIl czogc2V0IEFDVF9DUkVBVEUgKG1hcCB3d2lkIGNoYW5nZSkiLAogCQkJbXBwLT5hbGlhcyk7CiAJ CXJldHVybjsKIAl9CiAKKwlpZiAoY21wcCAhPSBjbXBwX2J5X25hbWUpIHsKKwkJY29uZGxvZygy LCAiJXM6IHVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXMgKCVzIGlzIHVzZWQgYnkgJXMpIiwKKwkJ CW1wcC0+d3dpZCwgY21wcC0+YWxpYXMsIG1wcC0+YWxpYXMsCisJCQltcHAtPmFsaWFzLCBjbXBw X2J5X25hbWUtPnd3aWQpOworCQltcHAtPmFjdGlvbiA9IEFDVF9OT1RISU5HOworCQlyZXR1cm47 CisJfQorCiAJaWYgKHBhdGhjb3VudChtcHAsIFBBVEhfVVApID09IDApIHsKIAkJbXBwLT5hY3Rp b24gPSBBQ1RfTk9USElORzsKIAkJY29uZGxvZygzLCAiJXM6IHNldCBBQ1RfTk9USElORyAobm8g dXNhYmxlIHBhdGgpIiwKCi0tCmRtLWRldmVsIG1haWxpbmcgbGlzdApkbS1kZXZlbEByZWRoYXQu Y29tCmh0dHBzOi8vd3d3LnJlZGhhdC5jb20vbWFpbG1hbi9saXN0aW5mby9kbS1kZXZlbA==