From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bart Van Assche Subject: Re: [PATCH v2] scsi_sysfs: fix hang when removing scsi device Date: Mon, 13 Mar 2017 18:49:09 +0000 Message-ID: <1489430936.2658.9.camel@sandisk.com> References: <1489077442-20610-1-git-send-email-israelr@mellanox.com> <1489088191.2597.9.camel@sandisk.com> <22efc8bd-ae71-14c7-247b-7399bfd28c6d@mellanox.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="_006_148943093626589camelsandiskcom_" Return-path: Received: from esa3.hgst.iphmx.com ([216.71.153.141]:65456 "EHLO esa3.hgst.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751647AbdCMStX (ORCPT ); Mon, 13 Mar 2017 14:49:23 -0400 In-Reply-To: <22efc8bd-ae71-14c7-247b-7399bfd28c6d@mellanox.com> Content-Language: en-US Sender: linux-scsi-owner@vger.kernel.org List-Id: linux-scsi@vger.kernel.org To: "linux-scsi@vger.kernel.org" , "israelr@mellanox.com" Cc: "maxg@mellanox.com" --_006_148943093626589camelsandiskcom_ Content-Type: text/plain; charset="iso-8859-1" Content-ID: <733FECAC6DCECA489A91C1D4AB62D973@sandisk.com> Content-Transfer-Encoding: quoted-printable On Sun, 2017-03-12 at 12:26 +0200, Israel Rukshin wrote: > scsi_device_get() affects I/O because scsi_target_unblock() use it and ca= lls to blk_start_queue(). > terminate_rport_io() is called after scsi_target_unblock() and completes = all the commands > including the SYNCHRONIZE CACHE command. >=20 > I applied your patch and you can see that QUEUE_FLAG_STOPPED is on. Hello Israel, Thanks, that's very interesting feedback. Sorry but I prefer to fix scsi_target_unblock() instead of changing __scsi_remove_device(). Would it be possible to verify whether the five attached patches fix the issue you had reported? Thanks, Bart.= --_006_148943093626589camelsandiskcom_ Content-Type: text/x-patch; name="0001-Avoid-that-scsi_device_put-triggers-a-use-after-free.patch" Content-Description: 0001-Avoid-that-scsi_device_put-triggers-a-use-after-free.patch Content-Disposition: attachment; filename="0001-Avoid-that-scsi_device_put-triggers-a-use-after-free.patch"; size=2528; creation-date="Mon, 13 Mar 2017 18:49:09 GMT"; modification-date="Mon, 13 Mar 2017 18:49:09 GMT" Content-ID: <56C36623489B60409C15DB0266E86FD2@sandisk.com> Content-Transfer-Encoding: base64 RnJvbSAzYzU4ODJjOWNkODgyNjVmZjgxZjYzMjFlZGMzY2FmMmEyOTgxZjU1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCYXJ0IFZhbiBBc3NjaGUgPGJhcnQudmFuYXNzY2hlQHNhbmRp c2suY29tPgpEYXRlOiBGcmksIDMgTWFyIDIwMTcgMTE6MTM6MzkgLTA4MDAKU3ViamVjdDogW1BB VENIIDEvNV0gQXZvaWQgdGhhdCBzY3NpX2RldmljZV9wdXQoKSB0cmlnZ2VycyBhIHVzZS1hZnRl ci1mcmVlCgpBdm9pZCB0aGF0IHRoZSBmb2xsb3dpbmcgY3Jhc2ggb2NjdXJzLCBhIGNyYXNoIHRo YXQgaXMgZWFzeSB0bwp0cmlnZ2VyIHdpdGgga2VybmVsIHY0LjExLXJjMSBidXQgdGhhdCBJIG9u bHkgc2F3IHNwb3JhZGljYWxseQppbiB0aGUgcGFzdDoKCmdlbmVyYWwgcHJvdGVjdGlvbiBmYXVs dDogMDAwMCBbIzFdIFNNUApSSVA6IDAwMTA6c2NzaV9kZXZpY2VfcHV0KzB4Yi8weDMwCkNhbGwg VHJhY2U6CiBzY3NpX2Rpc2tfcHV0KzB4MmQvMHg0MAogc2RfcmVsZWFzZSsweDNkLzB4YjAKIF9f YmxrZGV2X3B1dCsweDI5ZS8weDM2MAogYmxrZGV2X3B1dCsweDQ5LzB4MTcwCiBkbV9wdXRfdGFi bGVfZGV2aWNlKzB4NTgvMHhjMCBbZG1fbW9kXQogZG1fcHV0X2RldmljZSsweDcwLzB4YzAgW2Rt X21vZF0KIGZyZWVfcHJpb3JpdHlfZ3JvdXArMHg5Mi8weGMwIFtkbV9tdWx0aXBhdGhdCiBmcmVl X211bHRpcGF0aCsweDcwLzB4YzAgW2RtX211bHRpcGF0aF0KIG11bHRpcGF0aF9kdHIrMHgxOS8w eDIwIFtkbV9tdWx0aXBhdGhdCiBkbV90YWJsZV9kZXN0cm95KzB4NjcvMHgxMjAgW2RtX21vZF0K IGRldl9zdXNwZW5kKzB4ZGUvMHgyNDAgW2RtX21vZF0KIGN0bF9pb2N0bCsweDFmNS8weDUyMCBb ZG1fbW9kXQogZG1fY3RsX2lvY3RsKzB4ZS8weDIwIFtkbV9tb2RdCiBkb192ZnNfaW9jdGwrMHg4 Zi8weDcwMAogU3lTX2lvY3RsKzB4M2MvMHg3MAogZW50cnlfU1lTQ0FMTF82NF9mYXN0cGF0aCsw eDE4LzB4YWQKClNpZ25lZC1vZmYtYnk6IEJhcnQgVmFuIEFzc2NoZSA8YmFydC52YW5hc3NjaGVA c2FuZGlzay5jb20+CkNjOiA8c3RhYmxlQHZnZXIua2VybmVsLm9yZz4KLS0tCiBkcml2ZXJzL3Nj c2kvc2NzaS5jICAgICAgICB8IDIgKy0KIGRyaXZlcnMvc2NzaS9zY3NpX3NjYW4uYyAgIHwgMSAr CiBpbmNsdWRlL3Njc2kvc2NzaV9kZXZpY2UuaCB8IDEgKwogMyBmaWxlcyBjaGFuZ2VkLCAzIGlu c2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Njc2kvc2Nz aS5jIGIvZHJpdmVycy9zY3NpL3Njc2kuYwppbmRleCA3YmZiY2ZhN2FmNDAuLmIzYmI0OWQwNjk0 MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9zY3NpL3Njc2kuYworKysgYi9kcml2ZXJzL3Njc2kvc2Nz aS5jCkBAIC02MDIsNyArNjAyLDcgQEAgRVhQT1JUX1NZTUJPTChzY3NpX2RldmljZV9nZXQpOwog ICovCiB2b2lkIHNjc2lfZGV2aWNlX3B1dChzdHJ1Y3Qgc2NzaV9kZXZpY2UgKnNkZXYpCiB7Ci0J bW9kdWxlX3B1dChzZGV2LT5ob3N0LT5ob3N0dC0+bW9kdWxlKTsKKwltb2R1bGVfcHV0KHNkZXYt Pmhvc3R0LT5tb2R1bGUpOwogCXB1dF9kZXZpY2UoJnNkZXYtPnNkZXZfZ2VuZGV2KTsKIH0KIEVY UE9SVF9TWU1CT0woc2NzaV9kZXZpY2VfcHV0KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvc2NzaS9z Y3NpX3NjYW4uYyBiL2RyaXZlcnMvc2NzaS9zY3NpX3NjYW4uYwppbmRleCA2ZjcxMjhmNDljMzAu LjcxMzQ0ODdhYmJiMSAxMDA2NDQKLS0tIGEvZHJpdmVycy9zY3NpL3Njc2lfc2Nhbi5jCisrKyBi L2RyaXZlcnMvc2NzaS9zY3NpX3NjYW4uYwpAQCAtMjI3LDYgKzIyNyw3IEBAIHN0YXRpYyBzdHJ1 Y3Qgc2NzaV9kZXZpY2UgKnNjc2lfYWxsb2Nfc2RldihzdHJ1Y3Qgc2NzaV90YXJnZXQgKnN0YXJn ZXQsCiAJc2Rldi0+bW9kZWwgPSBzY3NpX251bGxfZGV2aWNlX3N0cnM7CiAJc2Rldi0+cmV2ID0g c2NzaV9udWxsX2RldmljZV9zdHJzOwogCXNkZXYtPmhvc3QgPSBzaG9zdDsKKwlzZGV2LT5ob3N0 dCA9IHNob3N0LT5ob3N0dDsKIAlzZGV2LT5xdWV1ZV9yYW1wX3VwX3BlcmlvZCA9IFNDU0lfREVG QVVMVF9SQU1QX1VQX1BFUklPRDsKIAlzZGV2LT5pZCA9IHN0YXJnZXQtPmlkOwogCXNkZXYtPmx1 biA9IGx1bjsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvc2NzaS9zY3NpX2RldmljZS5oIGIvaW5jbHVk ZS9zY3NpL3Njc2lfZGV2aWNlLmgKaW5kZXggNmYyMmIzOWYxYjBjLi5jZGE2MjBlZDU5MjIgMTAw NjQ0Ci0tLSBhL2luY2x1ZGUvc2NzaS9zY3NpX2RldmljZS5oCisrKyBiL2luY2x1ZGUvc2NzaS9z Y3NpX2RldmljZS5oCkBAIC04Miw2ICs4Miw3IEBAIHN0cnVjdCBzY3NpX2V2ZW50IHsKIAogc3Ry dWN0IHNjc2lfZGV2aWNlIHsKIAlzdHJ1Y3QgU2NzaV9Ib3N0ICpob3N0OworCXN0cnVjdCBzY3Np X2hvc3RfdGVtcGxhdGUgKmhvc3R0OwogCXN0cnVjdCByZXF1ZXN0X3F1ZXVlICpyZXF1ZXN0X3F1 ZXVlOwogCiAJLyogdGhlIG5leHQgdHdvIGFyZSBwcm90ZWN0ZWQgYnkgdGhlIGhvc3QtPmhvc3Rf bG9jayAqLwotLSAKMi4xMi4wCgo= --_006_148943093626589camelsandiskcom_ Content-Type: text/x-patch; name="0002-Change-sdev-host-hostt-into-sdev-hostt.patch" Content-Description: 0002-Change-sdev-host-hostt-into-sdev-hostt.patch Content-Disposition: attachment; filename="0002-Change-sdev-host-hostt-into-sdev-hostt.patch"; size=10690; creation-date="Mon, 13 Mar 2017 18:49:09 GMT"; modification-date="Mon, 13 Mar 2017 18:49:09 GMT" Content-ID: <5532E0DBB245254AA8FCF1DF1FB8D49E@sandisk.com> Content-Transfer-Encoding: base64 RnJvbSBlYzM0OWRmNWM2YjAzMzZjNzQ2YzEwOTg5NWQ3MTdiMmJlODE1MWNiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCYXJ0IFZhbiBBc3NjaGUgPGJhcnQudmFuYXNzY2hlQHNhbmRp c2suY29tPgpEYXRlOiBGcmksIDMgTWFyIDIwMTcgMTE6MDU6MTMgLTA4MDAKU3ViamVjdDogW1BB VENIIDIvNV0gQ2hhbmdlIHNkZXYtPmhvc3QtPmhvc3R0IGludG8gc2Rldi0+aG9zdHQKCk5vdyB0 aGF0IHRoZSBob3N0IHRlbXBsYXRlIHBvaW50ZXIgaXMgY2FjaGVkIGluIHRoZSBTQ1NJIGRldmlj ZQpzdHJ1Y3R1cmUsIHVzZSB0aGF0IHBvaW50ZXIgaW5zdGVhZCBvZiBnb2luZyBhcm91bmQgdGhy b3VnaCB0aGUKU0NTSSBob3N0LiBUaGlzIHBhdGNoIGRvZXMgbm90IGNoYW5nZSBhbnkgZnVuY3Rp b25hbGl0eS4KClNpZ25lZC1vZmYtYnk6IEJhcnQgVmFuIEFzc2NoZSA8YmFydC52YW5hc3NjaGVA c2FuZGlzay5jb20+Ci0tLQogZHJpdmVycy9zY3NpL29zc3QuYyAgICAgICB8ICA3ICsrKy0tLS0K IGRyaXZlcnMvc2NzaS9yYWlkX2NsYXNzLmMgfCAgMiArLQogZHJpdmVycy9zY3NpL3Njc2kuYyAg ICAgICB8ICAyICstCiBkcml2ZXJzL3Njc2kvc2NzaV9lcnJvci5jIHwgMTAgKysrKystLS0tLQog ZHJpdmVycy9zY3NpL3Njc2lfaW9jdGwuYyB8ICA0ICsrLS0KIGRyaXZlcnMvc2NzaS9zY3NpX2xp Yi5jICAgfCAgMiArLQogZHJpdmVycy9zY3NpL3Njc2lfc2Nhbi5jICB8ICA0ICsrLS0KIGRyaXZl cnMvc2NzaS9zY3NpX3N5c2ZzLmMgfCAxNiArKysrKysrKy0tLS0tLS0tCiBkcml2ZXJzL3Njc2kv c2QuYyAgICAgICAgIHwgIDggKysrKy0tLS0KIGRyaXZlcnMvc2NzaS9zZy5jICAgICAgICAgfCAx NCArKysrKy0tLS0tLS0tLQogZHJpdmVycy9zY3NpL3N0LmMgICAgICAgICB8ICA1ICsrLS0tCiAx MSBmaWxlcyBjaGFuZ2VkLCAzNCBpbnNlcnRpb25zKCspLCA0MCBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL3Njc2kvb3NzdC5jIGIvZHJpdmVycy9zY3NpL29zc3QuYwppbmRleCBj NDdmNGIzNDliYWMuLjQxMGE1ODY1ZWFlMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9zY3NpL29zc3Qu YworKysgYi9kcml2ZXJzL3Njc2kvb3NzdC5jCkBAIC01Mjg1LDExICs1Mjg1LDEwIEBAIHN0YXRp YyBsb25nIG9zc3RfY29tcGF0X2lvY3RsKHN0cnVjdCBmaWxlICogZmlsZSwgdW5zaWduZWQgaW50 IGNtZF9pbiwgdW5zaWduZWQKIAlzdHJ1Y3Qgb3NzdF90YXBlICpTVHAgPSBmaWxlLT5wcml2YXRl X2RhdGE7CiAJc3RydWN0IHNjc2lfZGV2aWNlICpzZGV2ID0gU1RwLT5kZXZpY2U7CiAJaW50IHJl dCA9IC1FTk9JT0NUTENNRDsKLQlpZiAoc2Rldi0+aG9zdC0+aG9zdHQtPmNvbXBhdF9pb2N0bCkg ewogCi0JCXJldCA9IHNkZXYtPmhvc3QtPmhvc3R0LT5jb21wYXRfaW9jdGwoc2RldiwgY21kX2lu LCAodm9pZCBfX3VzZXIgKilhcmcpOwotCi0JfQorCWlmIChzZGV2LT5ob3N0dC0+Y29tcGF0X2lv Y3RsKQorCQlyZXQgPSBzZGV2LT5ob3N0dC0+Y29tcGF0X2lvY3RsKHNkZXYsIGNtZF9pbiwKKwkJ CQkJCSh2b2lkIF9fdXNlciAqKWFyZyk7CiAJcmV0dXJuIHJldDsKIH0KICNlbmRpZgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9zY3NpL3JhaWRfY2xhc3MuYyBiL2RyaXZlcnMvc2NzaS9yYWlkX2NsYXNz LmMKaW5kZXggMmMxNDZiNDRkOTVmLi5jY2RlNmUxZDhkZDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv c2NzaS9yYWlkX2NsYXNzLmMKKysrIGIvZHJpdmVycy9zY3NpL3JhaWRfY2xhc3MuYwpAQCAtNjcs NyArNjcsNyBAQCBzdGF0aWMgaW50IHJhaWRfbWF0Y2goc3RydWN0IGF0dHJpYnV0ZV9jb250YWlu ZXIgKmNvbnQsIHN0cnVjdCBkZXZpY2UgKmRldikKIAlpZiAoc2NzaV9pc19zZGV2X2RldmljZShk ZXYpKSB7CiAJCXN0cnVjdCBzY3NpX2RldmljZSAqc2RldiA9IHRvX3Njc2lfZGV2aWNlKGRldik7 CiAKLQkJaWYgKGktPmYtPmNvb2tpZSAhPSBzZGV2LT5ob3N0LT5ob3N0dCkKKwkJaWYgKGktPmYt PmNvb2tpZSAhPSBzZGV2LT5ob3N0dCkKIAkJCXJldHVybiAwOwogCiAJCXJldHVybiBpLT5mLT5p c19yYWlkKGRldik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3Njc2kvc2NzaS5jIGIvZHJpdmVycy9z Y3NpL3Njc2kuYwppbmRleCBiM2JiNDlkMDY5NDMuLjU5YzA1Mzg0Y2VmMSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9zY3NpL3Njc2kuYworKysgYi9kcml2ZXJzL3Njc2kvc2NzaS5jCkBAIC01ODEsNyAr NTgxLDcgQEAgaW50IHNjc2lfZGV2aWNlX2dldChzdHJ1Y3Qgc2NzaV9kZXZpY2UgKnNkZXYpCiAJ CWdvdG8gZmFpbDsKIAlpZiAoIWdldF9kZXZpY2UoJnNkZXYtPnNkZXZfZ2VuZGV2KSkKIAkJZ290 byBmYWlsOwotCWlmICghdHJ5X21vZHVsZV9nZXQoc2Rldi0+aG9zdC0+aG9zdHQtPm1vZHVsZSkp CisJaWYgKCF0cnlfbW9kdWxlX2dldChzZGV2LT5ob3N0dC0+bW9kdWxlKSkKIAkJZ290byBmYWls X3B1dF9kZXZpY2U7CiAJcmV0dXJuIDA7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvc2NzaS9zY3Np X2Vycm9yLmMgYi9kcml2ZXJzL3Njc2kvc2NzaV9lcnJvci5jCmluZGV4IGYyY2FmYWUxNTBiYy4u MTE2MGFhMGM3YjU4IDEwMDY0NAotLS0gYS9kcml2ZXJzL3Njc2kvc2NzaV9lcnJvci5jCisrKyBi L2RyaXZlcnMvc2NzaS9zY3NpX2Vycm9yLmMKQEAgLTEzMSw3ICsxMzEsNyBAQCBzY21kX2VoX2Fi b3J0X2hhbmRsZXIoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQogCQlTQ1NJX0xPR19FUlJPUl9S RUNPVkVSWSgzLAogCQkJc2NtZF9wcmludGsoS0VSTl9JTkZPLCBzY21kLAogCQkJCSAgICAiYWJv cnRpbmcgY29tbWFuZFxuIikpOwotCQlydG4gPSBzY3NpX3RyeV90b19hYm9ydF9jbWQoc2Rldi0+ aG9zdC0+aG9zdHQsIHNjbWQpOworCQlydG4gPSBzY3NpX3RyeV90b19hYm9ydF9jbWQoc2Rldi0+ aG9zdHQsIHNjbWQpOwogCQlpZiAocnRuID09IFNVQ0NFU1MpIHsKIAkJCXNldF9ob3N0X2J5dGUo c2NtZCwgRElEX1RJTUVfT1VUKTsKIAkJCWlmIChzY3NpX2hvc3RfZWhfcGFzdF9kZWFkbGluZShz ZGV2LT5ob3N0KSkgewpAQCAtNjA0LDcgKzYwNCw3IEBAIEVYUE9SVF9TWU1CT0xfR1BMKHNjc2lf Y2hlY2tfc2Vuc2UpOwogCiBzdGF0aWMgdm9pZCBzY3NpX2hhbmRsZV9xdWV1ZV9yYW1wX3VwKHN0 cnVjdCBzY3NpX2RldmljZSAqc2RldikKIHsKLQlzdHJ1Y3Qgc2NzaV9ob3N0X3RlbXBsYXRlICpz aHQgPSBzZGV2LT5ob3N0LT5ob3N0dDsKKwlzdHJ1Y3Qgc2NzaV9ob3N0X3RlbXBsYXRlICpzaHQg PSBzZGV2LT5ob3N0dDsKIAlzdHJ1Y3Qgc2NzaV9kZXZpY2UgKnRtcF9zZGV2OwogCiAJaWYgKCFz aHQtPnRyYWNrX3F1ZXVlX2RlcHRoIHx8CkBAIC02MzYsNyArNjM2LDcgQEAgc3RhdGljIHZvaWQg c2NzaV9oYW5kbGVfcXVldWVfcmFtcF91cChzdHJ1Y3Qgc2NzaV9kZXZpY2UgKnNkZXYpCiAKIHN0 YXRpYyB2b2lkIHNjc2lfaGFuZGxlX3F1ZXVlX2Z1bGwoc3RydWN0IHNjc2lfZGV2aWNlICpzZGV2 KQogewotCXN0cnVjdCBzY3NpX2hvc3RfdGVtcGxhdGUgKnNodCA9IHNkZXYtPmhvc3QtPmhvc3R0 OworCXN0cnVjdCBzY3NpX2hvc3RfdGVtcGxhdGUgKnNodCA9IHNkZXYtPmhvc3R0OwogCXN0cnVj dCBzY3NpX2RldmljZSAqdG1wX3NkZXY7CiAKIAlpZiAoIXNodC0+dHJhY2tfcXVldWVfZGVwdGgp CkBAIC04NTEsNyArODUxLDcgQEAgc3RhdGljIGludCBzY3NpX3RyeV90YXJnZXRfcmVzZXQoc3Ry dWN0IHNjc2lfY21uZCAqc2NtZCkKIHN0YXRpYyBpbnQgc2NzaV90cnlfYnVzX2RldmljZV9yZXNl dChzdHJ1Y3Qgc2NzaV9jbW5kICpzY21kKQogewogCWludCBydG47Ci0Jc3RydWN0IHNjc2lfaG9z dF90ZW1wbGF0ZSAqaG9zdHQgPSBzY21kLT5kZXZpY2UtPmhvc3QtPmhvc3R0OworCXN0cnVjdCBz Y3NpX2hvc3RfdGVtcGxhdGUgKmhvc3R0ID0gc2NtZC0+ZGV2aWNlLT5ob3N0dDsKIAogCWlmICgh aG9zdHQtPmVoX2RldmljZV9yZXNldF9oYW5kbGVyKQogCQlyZXR1cm4gRkFJTEVEOwpAQCAtODkw LDcgKzg5MCw3IEBAIHN0YXRpYyBpbnQgc2NzaV90cnlfdG9fYWJvcnRfY21kKHN0cnVjdCBzY3Np X2hvc3RfdGVtcGxhdGUgKmhvc3R0LAogCiBzdGF0aWMgdm9pZCBzY3NpX2Fib3J0X2VoX2NtbmQo c3RydWN0IHNjc2lfY21uZCAqc2NtZCkKIHsKLQlpZiAoc2NzaV90cnlfdG9fYWJvcnRfY21kKHNj bWQtPmRldmljZS0+aG9zdC0+aG9zdHQsIHNjbWQpICE9IFNVQ0NFU1MpCisJaWYgKHNjc2lfdHJ5 X3RvX2Fib3J0X2NtZChzY21kLT5kZXZpY2UtPmhvc3R0LCBzY21kKSAhPSBTVUNDRVNTKQogCQlp ZiAoc2NzaV90cnlfYnVzX2RldmljZV9yZXNldChzY21kKSAhPSBTVUNDRVNTKQogCQkJaWYgKHNj c2lfdHJ5X3RhcmdldF9yZXNldChzY21kKSAhPSBTVUNDRVNTKQogCQkJCWlmIChzY3NpX3RyeV9i dXNfcmVzZXQoc2NtZCkgIT0gU1VDQ0VTUykKZGlmZiAtLWdpdCBhL2RyaXZlcnMvc2NzaS9zY3Np X2lvY3RsLmMgYi9kcml2ZXJzL3Njc2kvc2NzaV9pb2N0bC5jCmluZGV4IGI2YmYzZjI5YTEyYS4u NGVjYjVkNDhiNjViIDEwMDY0NAotLS0gYS9kcml2ZXJzL3Njc2kvc2NzaV9pb2N0bC5jCisrKyBi L2RyaXZlcnMvc2NzaS9zY3NpX2lvY3RsLmMKQEAgLTI2NCw4ICsyNjQsOCBAQCBpbnQgc2NzaV9p b2N0bChzdHJ1Y3Qgc2NzaV9kZXZpY2UgKnNkZXYsIGludCBjbWQsIHZvaWQgX191c2VyICphcmcp CiAJY2FzZSBTR19TQ1NJX1JFU0VUOgogCQlyZXR1cm4gc2NzaV9pb2N0bF9yZXNldChzZGV2LCBh cmcpOwogCWRlZmF1bHQ6Ci0JCWlmIChzZGV2LT5ob3N0LT5ob3N0dC0+aW9jdGwpCi0JCQlyZXR1 cm4gc2Rldi0+aG9zdC0+aG9zdHQtPmlvY3RsKHNkZXYsIGNtZCwgYXJnKTsKKwkJaWYgKHNkZXYt Pmhvc3R0LT5pb2N0bCkKKwkJCXJldHVybiBzZGV2LT5ob3N0dC0+aW9jdGwoc2RldiwgY21kLCBh cmcpOwogCX0KIAlyZXR1cm4gLUVJTlZBTDsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvc2NzaS9z Y3NpX2xpYi5jIGIvZHJpdmVycy9zY3NpL3Njc2lfbGliLmMKaW5kZXggYmEyMjg2NjUyZmY2Li5l ODE3NjcwOGNjMjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc2NzaS9zY3NpX2xpYi5jCisrKyBiL2Ry aXZlcnMvc2NzaS9zY3NpX2xpYi5jCkBAIC0xMTQxLDcgKzExNDEsNyBAQCB2b2lkIHNjc2lfaW5p dF9jb21tYW5kKHN0cnVjdCBzY3NpX2RldmljZSAqZGV2LCBzdHJ1Y3Qgc2NzaV9jbW5kICpjbWQp CiAKIAkvKiB6ZXJvIG91dCB0aGUgY21kLCBleGNlcHQgZm9yIHRoZSBlbWJlZGRlZCBzY3NpX3Jl cXVlc3QgKi8KIAltZW1zZXQoKGNoYXIgKiljbWQgKyBzaXplb2YoY21kLT5yZXEpLCAwLAotCQlz aXplb2YoKmNtZCkgLSBzaXplb2YoY21kLT5yZXEpICsgZGV2LT5ob3N0LT5ob3N0dC0+Y21kX3Np emUpOworCSAgICAgICBzaXplb2YoKmNtZCkgLSBzaXplb2YoY21kLT5yZXEpICsgZGV2LT5ob3N0 dC0+Y21kX3NpemUpOwogCiAJY21kLT5kZXZpY2UgPSBkZXY7CiAJY21kLT5zZW5zZV9idWZmZXIg PSBidWY7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3Njc2kvc2NzaV9zY2FuLmMgYi9kcml2ZXJzL3Nj c2kvc2NzaV9zY2FuLmMKaW5kZXggNzEzNDQ4N2FiYmIxLi5hYTIwYmZlOGJkYzIgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvc2NzaS9zY3NpX3NjYW4uYworKysgYi9kcml2ZXJzL3Njc2kvc2NzaV9zY2Fu LmMKQEAgLTk4MCw4ICs5ODAsOCBAQCBzdGF0aWMgaW50IHNjc2lfYWRkX2x1bihzdHJ1Y3Qgc2Nz aV9kZXZpY2UgKnNkZXYsIHVuc2lnbmVkIGNoYXIgKmlucV9yZXN1bHQsCiAKIAl0cmFuc3BvcnRf Y29uZmlndXJlX2RldmljZSgmc2Rldi0+c2Rldl9nZW5kZXYpOwogCi0JaWYgKHNkZXYtPmhvc3Qt Pmhvc3R0LT5zbGF2ZV9jb25maWd1cmUpIHsKLQkJcmV0ID0gc2Rldi0+aG9zdC0+aG9zdHQtPnNs YXZlX2NvbmZpZ3VyZShzZGV2KTsKKwlpZiAoc2Rldi0+aG9zdHQtPnNsYXZlX2NvbmZpZ3VyZSkg eworCQlyZXQgPSBzZGV2LT5ob3N0dC0+c2xhdmVfY29uZmlndXJlKHNkZXYpOwogCQlpZiAocmV0 KSB7CiAJCQkvKgogCQkJICogaWYgTExERCByZXBvcnRzIHNsYXZlIG5vdCBwcmVzZW50LCBkb24n dCBjbHV0dGVyCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Njc2kvc2NzaV9zeXNmcy5jIGIvZHJpdmVy cy9zY3NpL3Njc2lfc3lzZnMuYwppbmRleCA4MmRmZTA3YjFkNDcuLjRhNTgwNjU3YzZmNiAxMDA2 NDQKLS0tIGEvZHJpdmVycy9zY3NpL3Njc2lfc3lzZnMuYworKysgYi9kcml2ZXJzL3Njc2kvc2Nz aV9zeXNmcy5jCkBAIC05MTIsNyArOTEyLDcgQEAgc2Rldl9zdG9yZV9xdWV1ZV9kZXB0aChzdHJ1 Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRyLAogewogCWludCBk ZXB0aCwgcmV0dmFsOwogCXN0cnVjdCBzY3NpX2RldmljZSAqc2RldiA9IHRvX3Njc2lfZGV2aWNl KGRldik7Ci0Jc3RydWN0IHNjc2lfaG9zdF90ZW1wbGF0ZSAqc2h0ID0gc2Rldi0+aG9zdC0+aG9z dHQ7CisJc3RydWN0IHNjc2lfaG9zdF90ZW1wbGF0ZSAqc2h0ID0gc2Rldi0+aG9zdHQ7CiAKIAlp ZiAoIXNodC0+Y2hhbmdlX3F1ZXVlX2RlcHRoKQogCQlyZXR1cm4gLUVJTlZBTDsKQEAgLTEwODAs MTEgKzEwODAsMTEgQEAgc3RhdGljIHVtb2RlX3Qgc2NzaV9zZGV2X2F0dHJfaXNfdmlzaWJsZShz dHJ1Y3Qga29iamVjdCAqa29iaiwKIAogCiAJaWYgKGF0dHIgPT0gJmRldl9hdHRyX3F1ZXVlX2Rl cHRoLmF0dHIgJiYKLQkgICAgIXNkZXYtPmhvc3QtPmhvc3R0LT5jaGFuZ2VfcXVldWVfZGVwdGgp CisJICAgICFzZGV2LT5ob3N0dC0+Y2hhbmdlX3F1ZXVlX2RlcHRoKQogCQlyZXR1cm4gU19JUlVH TzsKIAogCWlmIChhdHRyID09ICZkZXZfYXR0cl9xdWV1ZV9yYW1wX3VwX3BlcmlvZC5hdHRyICYm Ci0JICAgICFzZGV2LT5ob3N0LT5ob3N0dC0+Y2hhbmdlX3F1ZXVlX2RlcHRoKQorCSAgICAhc2Rl di0+aG9zdHQtPmNoYW5nZV9xdWV1ZV9kZXB0aCkKIAkJcmV0dXJuIDA7CiAKICNpZmRlZiBDT05G SUdfU0NTSV9ESApAQCAtMTI1NiwxMCArMTI1NiwxMCBAQCBpbnQgc2NzaV9zeXNmc19hZGRfc2Rl dihzdHJ1Y3Qgc2NzaV9kZXZpY2UgKnNkZXYpCiAJCQkgICAgIkZhaWxlZCB0byByZWdpc3RlciBi c2cgcXVldWUsIGVycm5vPSVkXG4iLCBlcnJvcik7CiAKIAkvKiBhZGQgYWRkaXRpb25hbCBob3N0 IHNwZWNpZmljIGF0dHJpYnV0ZXMgKi8KLQlpZiAoc2Rldi0+aG9zdC0+aG9zdHQtPnNkZXZfYXR0 cnMpIHsKLQkJZm9yIChpID0gMDsgc2Rldi0+aG9zdC0+aG9zdHQtPnNkZXZfYXR0cnNbaV07IGkr KykgeworCWlmIChzZGV2LT5ob3N0dC0+c2Rldl9hdHRycykgeworCQlmb3IgKGkgPSAwOyBzZGV2 LT5ob3N0dC0+c2Rldl9hdHRyc1tpXTsgaSsrKSB7CiAJCQllcnJvciA9IGRldmljZV9jcmVhdGVf ZmlsZSgmc2Rldi0+c2Rldl9nZW5kZXYsCi0JCQkJCXNkZXYtPmhvc3QtPmhvc3R0LT5zZGV2X2F0 dHJzW2ldKTsKKwkJCQkJc2Rldi0+aG9zdHQtPnNkZXZfYXR0cnNbaV0pOwogCQkJaWYgKGVycm9y KQogCQkJCXJldHVybiBlcnJvcjsKIAkJfQpAQCAtMTMwMiw4ICsxMzAyLDggQEAgdm9pZCBfX3Nj c2lfcmVtb3ZlX2RldmljZShzdHJ1Y3Qgc2NzaV9kZXZpY2UgKnNkZXYpCiAJYmxrX2NsZWFudXBf cXVldWUoc2Rldi0+cmVxdWVzdF9xdWV1ZSk7CiAJY2FuY2VsX3dvcmtfc3luYygmc2Rldi0+cmVx dWV1ZV93b3JrKTsKIAotCWlmIChzZGV2LT5ob3N0LT5ob3N0dC0+c2xhdmVfZGVzdHJveSkKLQkJ c2Rldi0+aG9zdC0+aG9zdHQtPnNsYXZlX2Rlc3Ryb3koc2Rldik7CisJaWYgKHNkZXYtPmhvc3R0 LT5zbGF2ZV9kZXN0cm95KQorCQlzZGV2LT5ob3N0dC0+c2xhdmVfZGVzdHJveShzZGV2KTsKIAl0 cmFuc3BvcnRfZGVzdHJveV9kZXZpY2UoZGV2KTsKIAogCS8qCmRpZmYgLS1naXQgYS9kcml2ZXJz L3Njc2kvc2QuYyBiL2RyaXZlcnMvc2NzaS9zZC5jCmluZGV4IGQyNzdlODYyMGUzZS4uMzc2Y2Y0 M2ZlYmYxIDEwMDY0NAotLS0gYS9kcml2ZXJzL3Njc2kvc2QuYworKysgYi9kcml2ZXJzL3Njc2kv c2QuYwpAQCAtMTU3MSw5ICsxNTcxLDkgQEAgc3RhdGljIGludCBzZF9jb21wYXRfaW9jdGwoc3Ry dWN0IGJsb2NrX2RldmljZSAqYmRldiwgZm1vZGVfdCBtb2RlLAogCS8qIAogCSAqIExldCB0aGUg c3RhdGljIGlvY3RsIHRyYW5zbGF0aW9uIHRhYmxlIHRha2UgY2FyZSBvZiBpdC4KIAkgKi8KLQlp ZiAoIXNkZXYtPmhvc3QtPmhvc3R0LT5jb21wYXRfaW9jdGwpCisJaWYgKCFzZGV2LT5ob3N0dC0+ Y29tcGF0X2lvY3RsKQogCQlyZXR1cm4gLUVOT0lPQ1RMQ01EOyAKLQlyZXR1cm4gc2Rldi0+aG9z dC0+aG9zdHQtPmNvbXBhdF9pb2N0bChzZGV2LCBjbWQsICh2b2lkIF9fdXNlciAqKWFyZyk7CisJ cmV0dXJuIHNkZXYtPmhvc3R0LT5jb21wYXRfaW9jdGwoc2RldiwgY21kLCAodm9pZCBfX3VzZXIg KilhcmcpOwogfQogI2VuZGlmCiAKQEAgLTI5NjgsOCArMjk2OCw4IEBAIHN0YXRpYyB2b2lkIHNk X3VubG9ja19uYXRpdmVfY2FwYWNpdHkoc3RydWN0IGdlbmRpc2sgKmRpc2spCiB7CiAJc3RydWN0 IHNjc2lfZGV2aWNlICpzZGV2ID0gc2NzaV9kaXNrKGRpc2spLT5kZXZpY2U7CiAKLQlpZiAoc2Rl di0+aG9zdC0+aG9zdHQtPnVubG9ja19uYXRpdmVfY2FwYWNpdHkpCi0JCXNkZXYtPmhvc3QtPmhv c3R0LT51bmxvY2tfbmF0aXZlX2NhcGFjaXR5KHNkZXYpOworCWlmIChzZGV2LT5ob3N0dC0+dW5s b2NrX25hdGl2ZV9jYXBhY2l0eSkKKwkJc2Rldi0+aG9zdHQtPnVubG9ja19uYXRpdmVfY2FwYWNp dHkoc2Rldik7CiB9CiAKIC8qKgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zY3NpL3NnLmMgYi9kcml2 ZXJzL3Njc2kvc2cuYwppbmRleCAyOWI4NjUwNWY3OTYuLjg0YjNjZGNjNDkzNCAxMDA2NDQKLS0t IGEvZHJpdmVycy9zY3NpL3NnLmMKKysrIGIvZHJpdmVycy9zY3NpL3NnLmMKQEAgLTEwNTMsNyAr MTA1Myw3IEBAIHNnX2lvY3RsKHN0cnVjdCBmaWxlICpmaWxwLCB1bnNpZ25lZCBpbnQgY21kX2lu LCB1bnNpZ25lZCBsb25nIGFyZykKIAljYXNlIFNHX0VNVUxBVEVEX0hPU1Q6CiAJCWlmIChhdG9t aWNfcmVhZCgmc2RwLT5kZXRhY2hpbmcpKQogCQkJcmV0dXJuIC1FTk9ERVY7Ci0JCXJldHVybiBw dXRfdXNlcihzZHAtPmRldmljZS0+aG9zdC0+aG9zdHQtPmVtdWxhdGVkLCBpcCk7CisJCXJldHVy biBwdXRfdXNlcihzZHAtPmRldmljZS0+aG9zdHQtPmVtdWxhdGVkLCBpcCk7CiAJY2FzZSBTQ1NJ X0lPQ1RMX1NFTkRfQ09NTUFORDoKIAkJaWYgKGF0b21pY19yZWFkKCZzZHAtPmRldGFjaGluZykp CiAJCQlyZXR1cm4gLUVOT0RFVjsKQEAgLTExMjAsMTQgKzExMjAsMTAgQEAgc3RhdGljIGxvbmcg c2dfY29tcGF0X2lvY3RsKHN0cnVjdCBmaWxlICpmaWxwLCB1bnNpZ25lZCBpbnQgY21kX2luLCB1 bnNpZ25lZCBsb24KIAkJcmV0dXJuIC1FTlhJTzsKIAogCXNkZXYgPSBzZHAtPmRldmljZTsKLQlp ZiAoc2Rldi0+aG9zdC0+aG9zdHQtPmNvbXBhdF9pb2N0bCkgeyAKLQkJaW50IHJldDsKKwlpZiAo c2Rldi0+aG9zdHQtPmNvbXBhdF9pb2N0bCkKKwkJcmV0dXJuIHNkZXYtPmhvc3R0LT5jb21wYXRf aW9jdGwoc2RldiwgY21kX2luLAorCQkJCQkJICh2b2lkIF9fdXNlciAqKWFyZyk7CiAKLQkJcmV0 ID0gc2Rldi0+aG9zdC0+aG9zdHQtPmNvbXBhdF9pb2N0bChzZGV2LCBjbWRfaW4sICh2b2lkIF9f dXNlciAqKWFyZyk7Ci0KLQkJcmV0dXJuIHJldDsKLQl9Ci0JCiAJcmV0dXJuIC1FTk9JT0NUTENN RDsKIH0KICNlbmRpZgpAQCAtMjY4OSw3ICsyNjg1LDcgQEAgc3RhdGljIGludCBzZ19wcm9jX3Nl cV9zaG93X2RlYnVnKHN0cnVjdCBzZXFfZmlsZSAqcywgdm9pZCAqdikKIAkJCQkgICBzY3NpZHAt Pmhvc3QtPmhvc3Rfbm8sCiAJCQkJICAgc2NzaWRwLT5jaGFubmVsLCBzY3NpZHAtPmlkLAogCQkJ CSAgIHNjc2lkcC0+bHVuLAotCQkJCSAgIHNjc2lkcC0+aG9zdC0+aG9zdHQtPmVtdWxhdGVkKTsK KwkJCQkgICBzY3NpZHAtPmhvc3R0LT5lbXVsYXRlZCk7CiAJCX0KIAkJc2VxX3ByaW50ZihzLCAi IHNnX3RhYmxlc2l6ZT0lZCBleGNsPSVkIG9wZW5fY250PSVkXG4iLAogCQkJICAgc2RwLT5zZ190 YWJsZXNpemUsIHNkcC0+ZXhjbHVkZSwgc2RwLT5vcGVuX2NudCk7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL3Njc2kvc3QuYyBiL2RyaXZlcnMvc2NzaS9zdC5jCmluZGV4IGU1ZWY3OGE2ODQ4ZS4uOTQ5 NDczYWU4MzkyIDEwMDY0NAotLS0gYS9kcml2ZXJzL3Njc2kvc3QuYworKysgYi9kcml2ZXJzL3Nj c2kvc3QuYwpAQCAtMzg2MiwxMSArMzg2MiwxMCBAQCBzdGF0aWMgbG9uZyBzdF9jb21wYXRfaW9j dGwoc3RydWN0IGZpbGUgKmZpbGUsIHVuc2lnbmVkIGludCBjbWQsIHVuc2lnbmVkIGxvbmcgYQog CXN0cnVjdCBzY3NpX3RhcGUgKlNUcCA9IGZpbGUtPnByaXZhdGVfZGF0YTsKIAlzdHJ1Y3Qgc2Nz aV9kZXZpY2UgKnNkZXYgPSBTVHAtPmRldmljZTsKIAlpbnQgcmV0ID0gLUVOT0lPQ1RMQ01EOwot CWlmIChzZGV2LT5ob3N0LT5ob3N0dC0+Y29tcGF0X2lvY3RsKSB7IAogCi0JCXJldCA9IHNkZXYt Pmhvc3QtPmhvc3R0LT5jb21wYXRfaW9jdGwoc2RldiwgY21kLCAodm9pZCBfX3VzZXIgKilhcmcp OworCWlmIChzZGV2LT5ob3N0dC0+Y29tcGF0X2lvY3RsKQorCQlyZXQgPSBzZGV2LT5ob3N0dC0+ Y29tcGF0X2lvY3RsKHNkZXYsIGNtZCwgKHZvaWQgX191c2VyICopYXJnKTsKIAotCX0KIAlyZXR1 cm4gcmV0OwogfQogI2VuZGlmCi0tIAoyLjEyLjAKCg== --_006_148943093626589camelsandiskcom_ Content-Type: text/x-patch; name="0003-Warn-if-__scsi_remove_device-is-called-for-a-stopped.patch" Content-Description: 0003-Warn-if-__scsi_remove_device-is-called-for-a-stopped.patch Content-Disposition: attachment; filename="0003-Warn-if-__scsi_remove_device-is-called-for-a-stopped.patch"; size=2247; creation-date="Mon, 13 Mar 2017 18:49:09 GMT"; modification-date="Mon, 13 Mar 2017 18:49:09 GMT" Content-ID: <1BC3C86AC6197346B41F83FDFA5C7D4D@sandisk.com> Content-Transfer-Encoding: base64 RnJvbSBjYTVhYjcwOTc5NDc2NjdlN2QwMzI3MjhjZmRiNjA5YjMxNWVlNzZkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCYXJ0IFZhbiBBc3NjaGUgPGJhcnQudmFuYXNzY2hlQHNhbmRp c2suY29tPgpEYXRlOiBNb24sIDEzIE1hciAyMDE3IDEwOjA2OjEzIC0wNzAwClN1YmplY3Q6IFtQ QVRDSCAzLzVdIFdhcm4gaWYgX19zY3NpX3JlbW92ZV9kZXZpY2UoKSBpcyBjYWxsZWQgZm9yIGEg c3RvcHBlZAogcXVldWUKCkNhbGxpbmcgX19zY3NpX3JlbW92ZV9kZXZpY2UoKSBmb3IgYSBzdG9w cGVkIHF1ZXVlIGlzIGEgYnVnIGJlY2F1c2UKdGhlIGRldmljZV9kZWwoKSBjYWxsIGNhbiB0cmln Z2VyIEkvTyBhbmQgd2lsbCB0cmlnZ2VyIGUuZy4gdGhlCmZvbGxvd2luZyBoYW5nOgoKQ2FsbCBU cmFjZToKWzxmZmZmZmZmZjgxNWRkOTg1Pl0gc2NoZWR1bGUrMHgzNS8weDgwCls8ZmZmZmZmZmY4 MTVlMDJjNz5dIHNjaGVkdWxlX3RpbWVvdXQrMHgyMzcvMHgyZDAKWzxmZmZmZmZmZjgxNWRjZjQ2 Pl0gaW9fc2NoZWR1bGVfdGltZW91dCsweGE2LzB4MTEwCls8ZmZmZmZmZmY4MTVkZTJmMz5dIHdh aXRfZm9yX2NvbXBsZXRpb25faW8rMHhhMy8weDExMApbPGZmZmZmZmZmODEyZTY2ZmY+XSBibGtf ZXhlY3V0ZV9ycSsweGRmLzB4MTIwCls8ZmZmZmZmZmZhMDAxMzVkZT5dIHNjc2lfZXhlY3V0ZSsw eGNlLzB4MTUwIFtzY3NpX21vZF0KWzxmZmZmZmZmZmEwMDE1NDhmPl0gc2NzaV9leGVjdXRlX3Jl cV9mbGFncysweDhmLzB4ZjAgW3Njc2lfbW9kXQpbPGZmZmZmZmZmYTAxNTQ4NDk+XSBzZF9zeW5j X2NhY2hlKzB4YTkvMHgxOTAgW3NkX21vZF0KWzxmZmZmZmZmZmEwMTU0YzNhPl0gc2Rfc2h1dGRv d24rMHg2YS8weDEwMCBbc2RfbW9kXQpbPGZmZmZmZmZmYTAxNTRkMzQ+XSBzZF9yZW1vdmUrMHg2 NC8weGMwIFtzZF9tb2RdCls8ZmZmZmZmZmY4MTQ0ZDNmZD5dIF9fZGV2aWNlX3JlbGVhc2VfZHJp dmVyKzB4OGQvMHgxMjAKWzxmZmZmZmZmZjgxNDRkNGFlPl0gZGV2aWNlX3JlbGVhc2VfZHJpdmVy KzB4MWUvMHgzMApbPGZmZmZmZmZmODE0NGMyMzk+XSBidXNfcmVtb3ZlX2RldmljZSsweGY5LzB4 MTcwCls8ZmZmZmZmZmY4MTQ0OGJjNz5dIGRldmljZV9kZWwrMHgxMjcvMHgyNDAKWzxmZmZmZmZm ZmEwMDFjMGYxPl0gX19zY3NpX3JlbW92ZV9kZXZpY2UrMHhjMS8weGQwIFtzY3NpX21vZF0KWzxm ZmZmZmZmZmEwMDFhNWQ3Pl0gc2NzaV9mb3JnZXRfaG9zdCsweDU3LzB4NjAgW3Njc2lfbW9kXQpb PGZmZmZmZmZmYTAwMGUzZDI+XSBzY3NpX3JlbW92ZV9ob3N0KzB4NzIvMHgxMTAgW3Njc2lfbW9k XQpbPGZmZmZmZmZmYTA2Zjk1YWI+XSBzcnBfcmVtb3ZlX3dvcmsrMHg4Yi8weDIwMCBbaWJfc3Jw XQoKUmVwb3J0ZWQtYnk6IElzcmFlbCBSdWtzaGluIDxpc3JhZWxyQG1lbGxhbm94LmNvbT4KU2ln bmVkLW9mZi1ieTogQmFydCBWYW4gQXNzY2hlIDxiYXJ0LnZhbmFzc2NoZUBzYW5kaXNrLmNvbT4K LS0tCiBkcml2ZXJzL3Njc2kvc2NzaV9zeXNmcy5jIHwgNiArKysrKysKIDEgZmlsZSBjaGFuZ2Vk LCA2IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Njc2kvc2NzaV9zeXNmcy5j IGIvZHJpdmVycy9zY3NpL3Njc2lfc3lzZnMuYwppbmRleCA0YTU4MDY1N2M2ZjYuLjMwYjBmZmNh YzU3NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9zY3NpL3Njc2lfc3lzZnMuYworKysgYi9kcml2ZXJz L3Njc2kvc2NzaV9zeXNmcy5jCkBAIC0xMjc0LDYgKzEyNzQsMTIgQEAgdm9pZCBfX3Njc2lfcmVt b3ZlX2RldmljZShzdHJ1Y3Qgc2NzaV9kZXZpY2UgKnNkZXYpCiAJc3RydWN0IGRldmljZSAqZGV2 ID0gJnNkZXYtPnNkZXZfZ2VuZGV2OwogCiAJLyoKKwkgKiBDYWxsaW5nIF9fc2NzaV9yZW1vdmVf ZGV2aWNlKCkgZm9yIGEgc3RvcHBlZCBxdWV1ZSBpcyBhIGJ1ZyBiZWNhdXNlCisJICogdGhlIGRl dmljZV9kZWwoKSBjYWxsIGNhbiB0cmlnZ2VyIEkvTy4gU2VlIGFsc28gc2RfcmVtb3ZlKCkuCisJ ICovCisJV0FSTl9PTl9PTkNFKGJsa19xdWV1ZV9zdG9wcGVkKHNkZXYtPnJlcXVlc3RfcXVldWUp KTsKKworCS8qCiAJICogVGhpcyBjbGVhbnVwIHBhdGggaXMgbm90IHJlZW50cmFudCBhbmQgd2hp bGUgaXQgaXMgaW1wb3NzaWJsZQogCSAqIHRvIGdldCBhIG5ldyByZWZlcmVuY2Ugd2l0aCBzY3Np X2RldmljZV9nZXQoKSBzb21lb25lIGNhbiBzdGlsbAogCSAqIGhvbGQgYSBwcmV2aW91c2x5IGFj cXVpcmVkIG9uZS4KLS0gCjIuMTIuMAoK --_006_148943093626589camelsandiskcom_ Content-Type: text/x-patch; name="0004-Ensure-that-scsi_internal_device_unblock-does-not-sl.patch" Content-Description: 0004-Ensure-that-scsi_internal_device_unblock-does-not-sl.patch Content-Disposition: attachment; filename="0004-Ensure-that-scsi_internal_device_unblock-does-not-sl.patch"; size=1125; creation-date="Mon, 13 Mar 2017 18:49:09 GMT"; modification-date="Mon, 13 Mar 2017 18:49:09 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSA3YTgzMzc0ZDlmNzIxYTI5MGZjMWVkNzNhYzU1MDBlNmEzN2UwODFhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCYXJ0IFZhbiBBc3NjaGUgPGJhcnQudmFuYXNzY2hlQHNhbmRp c2suY29tPgpEYXRlOiBNb24sIDEzIE1hciAyMDE3IDEwOjQ2OjQyIC0wNzAwClN1YmplY3Q6IFtQ QVRDSCA0LzVdIEVuc3VyZSB0aGF0IHNjc2lfaW50ZXJuYWxfZGV2aWNlX3VuYmxvY2soKSBkb2Vz IG5vdCBzbGVlcAoKVGhlIGhlYWRlciBhYm92ZSBzY3NpX2ludGVybmFsX2RldmljZV91bmJsb2Nr KCkgbWVudGlvbnMgdGhhdCB0aGlzCmZ1bmN0aW9uIG1heSBiZSBjYWxsZWQgZnJvbSBpbnRlcnJ1 cHQgY29udGV4dC4gSGVuY2UgZW5zdXJlIHRoYXQKdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBzbGVl cC4KClNpZ25lZC1vZmYtYnk6IEJhcnQgVmFuIEFzc2NoZSA8YmFydC52YW5hc3NjaGVAc2FuZGlz ay5jb20+CkNjOiA8c3RhYmxlQHZnZXIua2VybmVsLm9yZz4KLS0tCiBkcml2ZXJzL3Njc2kvc2Nz aV9saWIuYyB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Njc2kvc2NzaV9saWIuYyBiL2RyaXZlcnMv c2NzaS9zY3NpX2xpYi5jCmluZGV4IGU4MTc2NzA4Y2MyOC4uOTA5MzFkM2YyMjU1IDEwMDY0NAot LS0gYS9kcml2ZXJzL3Njc2kvc2NzaV9saWIuYworKysgYi9kcml2ZXJzL3Njc2kvc2NzaV9saWIu YwpAQCAtMzAyMiwxMCArMzAyMiwxMCBAQCBzY3NpX2ludGVybmFsX2RldmljZV91bmJsb2NrKHN0 cnVjdCBzY3NpX2RldmljZSAqc2RldiwKIAkJcmV0dXJuIC1FSU5WQUw7CiAKIAlpZiAocS0+bXFf b3BzKSB7Ci0JCWJsa19tcV9zdGFydF9zdG9wcGVkX2h3X3F1ZXVlcyhxLCBmYWxzZSk7CisJCWJs a19tcV9zdGFydF9zdG9wcGVkX2h3X3F1ZXVlcyhxLCB0cnVlKTsKIAl9IGVsc2UgewogCQlzcGlu X2xvY2tfaXJxc2F2ZShxLT5xdWV1ZV9sb2NrLCBmbGFncyk7Ci0JCWJsa19zdGFydF9xdWV1ZShx KTsKKwkJYmxrX3N0YXJ0X3F1ZXVlX2FzeW5jKHEpOwogCQlzcGluX3VubG9ja19pcnFyZXN0b3Jl KHEtPnF1ZXVlX2xvY2ssIGZsYWdzKTsKIAl9CiAKLS0gCjIuMTIuMAoK --_006_148943093626589camelsandiskcom_ Content-Type: text/x-patch; name="0005-Ensure-that-scsi_target_unblock-examines-all-devices.patch" Content-Description: 0005-Ensure-that-scsi_target_unblock-examines-all-devices.patch Content-Disposition: attachment; filename="0005-Ensure-that-scsi_target_unblock-examines-all-devices.patch"; size=2962; creation-date="Mon, 13 Mar 2017 18:49:09 GMT"; modification-date="Mon, 13 Mar 2017 18:49:09 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSAxYzYxMzc0NTBkNmI4MTUxNDVkNmI1MjQ4MTA1M2VlYjAzNWMzZjRhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCYXJ0IFZhbiBBc3NjaGUgPGJhcnQudmFuYXNzY2hlQHNhbmRp c2suY29tPgpEYXRlOiBNb24sIDEzIE1hciAyMDE3IDEwOjQ2OjA4IC0wNzAwClN1YmplY3Q6IFtQ QVRDSCA1LzVdIEVuc3VyZSB0aGF0IHNjc2lfdGFyZ2V0X3VuYmxvY2soKSBleGFtaW5lcyBhbGwg ZGV2aWNlcwoKU2luY2Ugc2NzaV90YXJnZXRfdW5ibG9jaygpIHVzZXMgc3RhcmdldF9mb3JfZWFj aF9kZXZpY2UoKSwgc2luY2UKc3RhcmdldF9mb3JfZWFjaF9kZXZpY2UoKSB1c2VzIHNjc2lfZGV2 aWNlX2dldCgpLCBzaW5jZQpzY3NpX2RldmljZV9nZXQoKSBmYWlscyBhZnRlciB1bmxvYWRpbmcg b2YgdGhlIExMRCBrZXJuZWwgbW9kdWxlCmhhcyBiZWVuIHN0YXJ0ZWQgc2NzaV90YXJnZXRfdW5i bG9jaygpIG1heSBza2lwIGRldmljZXMgdGhhdCB3ZXJlCmFmZmVjdGVkIGJ5IHNjc2lfdGFyZ2V0 X2Jsb2NrKCkuIEVuc3VyZSB0aGF0IHNjc2lfdGFyZ2V0X2Jsb2NrKCkKZXhhbWluZXMgYWxsIFND U0kgZGV2aWNlcy4gVGhpcyBwYXRjaCBhdm9pZHMgdGhhdCB1bmxvYWRpbmcgdGhlCmliX3NycCBr ZXJuZWwgbW9kdWxlIGNhbiB0cmlnZ2VyIHRoZSBmb2xsb3dpbmcgaGFuZzoKCkNhbGwgVHJhY2U6 CiBzY2hlZHVsZSsweDM1LzB4ODAKIHNjaGVkdWxlX3RpbWVvdXQrMHgyMzcvMHgyZDAKIGlvX3Nj aGVkdWxlX3RpbWVvdXQrMHhhNi8weDExMAogd2FpdF9mb3JfY29tcGxldGlvbl9pbysweGEzLzB4 MTEwCiBibGtfZXhlY3V0ZV9ycSsweGRmLzB4MTIwCiBzY3NpX2V4ZWN1dGUrMHhjZS8weDE1MCBb c2NzaV9tb2RdCiBzY3NpX2V4ZWN1dGVfcmVxX2ZsYWdzKzB4OGYvMHhmMCBbc2NzaV9tb2RdCiBz ZF9zeW5jX2NhY2hlKzB4YTkvMHgxOTAgW3NkX21vZF0KIHNkX3NodXRkb3duKzB4NmEvMHgxMDAg W3NkX21vZF0KIHNkX3JlbW92ZSsweDY0LzB4YzAgW3NkX21vZF0KIF9fZGV2aWNlX3JlbGVhc2Vf ZHJpdmVyKzB4OGQvMHgxMjAKIGRldmljZV9yZWxlYXNlX2RyaXZlcisweDFlLzB4MzAKIGJ1c19y ZW1vdmVfZGV2aWNlKzB4ZjkvMHgxNzAKIGRldmljZV9kZWwrMHgxMjcvMHgyNDAKIF9fc2NzaV9y ZW1vdmVfZGV2aWNlKzB4YzEvMHhkMCBbc2NzaV9tb2RdCiBzY3NpX2ZvcmdldF9ob3N0KzB4NTcv MHg2MCBbc2NzaV9tb2RdCiBzY3NpX3JlbW92ZV9ob3N0KzB4NzIvMHgxMTAgW3Njc2lfbW9kXQog c3JwX3JlbW92ZV93b3JrKzB4OGIvMHgyMDAgW2liX3NycF0KClJlcG9ydGVkLWJ5OiBJc3JhZWwg UnVrc2hpbiA8aXNyYWVsckBtZWxsYW5veC5jb20+ClNpZ25lZC1vZmYtYnk6IEJhcnQgVmFuIEFz c2NoZSA8YmFydC52YW5hc3NjaGVAc2FuZGlzay5jb20+CkNjOiA8c3RhYmxlQHZnZXIua2VybmVs Lm9yZz4KLS0tCiBkcml2ZXJzL3Njc2kvc2NzaV9saWIuYyB8IDI0ICsrKysrKysrKysrKysrKysr KysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zY3NpL3Njc2lfbGliLmMgYi9kcml2ZXJzL3Njc2kvc2Nz aV9saWIuYwppbmRleCA5MDkzMWQzZjIyNTUuLjViNTc2MzRiMjVmZCAxMDA2NDQKLS0tIGEvZHJp dmVycy9zY3NpL3Njc2lfbGliLmMKKysrIGIvZHJpdmVycy9zY3NpL3Njc2lfbGliLmMKQEAgLTMw NzQsMTQgKzMwNzQsMzAgQEAgdGFyZ2V0X3VuYmxvY2soc3RydWN0IGRldmljZSAqZGV2LCB2b2lk ICpkYXRhKQogCXJldHVybiAwOwogfQogCisvKioKKyAqIHNjc2lfdGFyZ2V0X3VuYmxvY2soKSAt IHVuYmxvY2sgYWxsIGRldmljZXMgYXNzb2NpYXRlZCB3aXRoIGEgU0NTSSB0YXJnZXQKKyAqIEBk ZXY6IEVpdGhlciBhIHBvaW50ZXIgdG8gdGhlIGRldiBtZW1iZXIgb2Ygc3RydWN0IHNjc2lfdGFy Z2V0IG9yIGEgcG9pbnRlcgorICoJdG8gdGhlIHNob3N0X2dlbmRldiBtZW1iZXIgb2Ygc3RydWN0 IFNjc2lfSG9zdC4KKyAqIEBuZXdfc3RhdGU6IE5ldyBTQ1NJIGRldmljZSBzdGF0ZS4KKyAqCisg KiBOb3RlOiBkbyBub3QgdXNlIHNjc2lfZ2V0X2RldmljZSgpIG5vciBhbnkgb2YgdGhlIG1hY3Jv cyB0aGF0IHVzZXMgdGhpcworICogZnVuY3Rpb24gZnJvbSBpbnNpZGUgc2NzaV90YXJnZXRfYmxv Y2soKSBiZWNhdXNlIG90aGVyd2lzZSB0aGlzIGZ1bmN0aW9uCisgKiB3b24ndCBoYXZlIGFueSBl ZmZlY3Qgd2hlbiBjYWxsZWQgd2hpbGUgdGhlIFNDU0kgTExEIGlzIGJlaW5nIHVubG9hZGVkLgor ICovCiB2b2lkCiBzY3NpX3RhcmdldF91bmJsb2NrKHN0cnVjdCBkZXZpY2UgKmRldiwgZW51bSBz Y3NpX2RldmljZV9zdGF0ZSBuZXdfc3RhdGUpCiB7Ci0JaWYgKHNjc2lfaXNfdGFyZ2V0X2Rldmlj ZShkZXYpKQotCQlzdGFyZ2V0X2Zvcl9lYWNoX2RldmljZSh0b19zY3NpX3RhcmdldChkZXYpLCAm bmV3X3N0YXRlLAotCQkJCQlkZXZpY2VfdW5ibG9jayk7Ci0JZWxzZQorCWlmIChzY3NpX2lzX3Rh cmdldF9kZXZpY2UoZGV2KSkgeworCQlzdHJ1Y3Qgc2NzaV90YXJnZXQgKnN0YXJnZXQgPSB0b19z Y3NpX3RhcmdldChkZXYpOworCQlzdHJ1Y3QgU2NzaV9Ib3N0ICpzaG9zdCA9IGRldl90b19zaG9z dChkZXYtPnBhcmVudCk7CisJCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CisKKwkJc3Bpbl9sb2NrX2ly cXNhdmUoc2hvc3QtPmhvc3RfbG9jaywgZmxhZ3MpOworCQlfX3N0YXJnZXRfZm9yX2VhY2hfZGV2 aWNlKHN0YXJnZXQsICZuZXdfc3RhdGUsIGRldmljZV91bmJsb2NrKTsKKwkJc3Bpbl91bmxvY2tf aXJxcmVzdG9yZShzaG9zdC0+aG9zdF9sb2NrLCBmbGFncyk7CisJfSBlbHNlIHsKIAkJZGV2aWNl X2Zvcl9lYWNoX2NoaWxkKGRldiwgJm5ld19zdGF0ZSwgdGFyZ2V0X3VuYmxvY2spOworCX0KIH0K IEVYUE9SVF9TWU1CT0xfR1BMKHNjc2lfdGFyZ2V0X3VuYmxvY2spOwogCi0tIAoyLjEyLjAKCg== --_006_148943093626589camelsandiskcom_--