From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [AUTOSEL,4.14,45/69] usb: gadget: u_ether: fix unsafe list iteration From: Sasha Levin Message-Id: <20181205094247.6556-45-sashal@kernel.org> Date: Wed, 5 Dec 2018 04:42:23 -0500 To: stable@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Marek Szyprowski , Felipe Balbi , Sasha Levin , linux-usb@vger.kernel.org List-ID: RnJvbTogTWFyZWsgU3p5cHJvd3NraSA8bS5zenlwcm93c2tpQHNhbXN1bmcuY29tPgoKWyBVcHN0 cmVhbSBjb21taXQgYzkyODdmYTY1N2IzMzI4YjQ1NDljMGFiMzllYTdmMTk3YTNkNmE1MCBdCgps aXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUoKSBpcyBub3Qgc2FmZSBmb3IgZGVsZXRpbmcgZW50cmll cyBmcm9tIHRoZQpsaXN0IGlmIHRoZSBzcGluIGxvY2ssIHdoaWNoIHByb3RlY3RzIGl0LCBpcyBy ZWxlYXNlZCBhbmQgcmVhY3F1aXJlZCBkdXJpbmcKdGhlIGxpc3QgaXRlcmF0aW9uLiBGaXggdGhp cyBpc3N1ZSBieSByZXBsYWNpbmcgdGhpcyBjb25zdHJ1Y3Rpb24gd2l0aAphIHNpbXBsZSBjaGVj ayBpZiBsaXN0IGlzIGVtcHR5IGFuZCByZW1vdmluZyB0aGUgZmlyc3QgZW50cnkgaW4gZWFjaApp dGVyYXRpb24uIFRoaXMgaXMgYWxtb3N0IGVxdWl2YWxlbnQgdG8gYSByZXZlcnQgb2YgdGhlIGNv bW1pdCBtZW50aW9uZWQgaW4KdGhlIEZpeGVzOiB0YWcuCgpUaGlzIHBhdGNoIGZpeGVzIGZvbGxv d2luZyBpc3N1ZToKLS0tPjgtLS0KVW5hYmxlIHRvIGhhbmRsZSBrZXJuZWwgTlVMTCBwb2ludGVy IGRlcmVmZXJlbmNlIGF0IHZpcnR1YWwgYWRkcmVzcyAwMDAwMDEwNApwZ2QgPSAocHRydmFsKQpb MDAwMDAxMDRdICpwZ2Q9MDAwMDAwMDAKSW50ZXJuYWwgZXJyb3I6IE9vcHM6IDgxNyBbIzFdIFBS RUVNUFQgU01QIEFSTQpNb2R1bGVzIGxpbmtlZCBpbjoKQ1BVOiAxIFBJRDogODQgQ29tbToga3dv cmtlci8xOjEgTm90IHRhaW50ZWQgNC4yMC4wLXJjMi1uZXh0LTIwMTgxMTE0LTAwMDA5LWc4MjY2 YjM1ZWM0MDQgIzEwNjEKSGFyZHdhcmUgbmFtZTogU0FNU1VORyBFWFlOT1MgKEZsYXR0ZW5lZCBE ZXZpY2UgVHJlZSkKV29ya3F1ZXVlOiBldmVudHMgZXRoX3dvcmsKUEMgaXMgYXQgcnhfZmlsbCsw eDYwLzB4YWMKTFIgaXMgYXQgX3Jhd19zcGluX2xvY2tfaXJxc2F2ZSsweDUwLzB4NWMKcGMgOiBb PGMwNjVmZWUwPl0gICAgbHIgOiBbPGMwYTA1NmI4Pl0gICAgcHNyOiA4MDAwMDA5MwpzcCA6IGVl N2ZiZWU4ICBpcCA6IDAwMDAwMTAwICBmcCA6IDAwMDAwMDAwCnIxMDogMDA2MDAwYzAgIHI5IDog YzEwYjBhYjAgIHI4IDogZWU3ZWI1YzAKcjcgOiBlZTdlYjYxNCAgcjYgOiBlZTdlYjVlYyAgcjUg OiAwMDAwMDBkYyAgcjQgOiBlZTEyYWMwMApyMyA6IGVlMTJhYzI0ICByMiA6IDAwMDAwMjAwICBy MSA6IDYwMDAwMDEzICByMCA6IGVlN2ViNWVjCkZsYWdzOiBOemN2ICBJUlFzIG9mZiAgRklRcyBv biAgTW9kZSBTVkNfMzIgIElTQSBBUk0gIFNlZ21lbnQgbm9uZQpDb250cm9sOiAxMGM1Mzg3ZCAg VGFibGU6IDZkNWRjMDRhICBEQUM6IDAwMDAwMDUxClByb2Nlc3Mga3dvcmtlci8xOjEgKHBpZDog ODQsIHN0YWNrIGxpbWl0ID0gMHgocHRydmFsKSkKU3RhY2s6ICgweGVlN2ZiZWU4IHRvIDB4ZWU3 ZmMwMDApCi4uLgpbPGMwNjVmZWUwPl0gKHJ4X2ZpbGwpIGZyb20gWzxjMDE0M2I3Yz5dIChwcm9j ZXNzX29uZV93b3JrKzB4MjAwLzB4NzM4KQpbPGMwMTQzYjdjPl0gKHByb2Nlc3Nfb25lX3dvcmsp IGZyb20gWzxjMDE0NDExOD5dICh3b3JrZXJfdGhyZWFkKzB4MmMvMHg0YzgpCls8YzAxNDQxMTg+ XSAod29ya2VyX3RocmVhZCkgZnJvbSBbPGMwMTRhOGE0Pl0gKGt0aHJlYWQrMHgxMjgvMHgxNjQp Cls8YzAxNGE4YTQ+XSAoa3RocmVhZCkgZnJvbSBbPGMwMTAxMGI0Pl0gKHJldF9mcm9tX2Zvcmsr MHgxNC8weDIwKQpFeGNlcHRpb24gc3RhY2soMHhlZTdmYmZiMCB0byAweGVlN2ZiZmY4KQouLi4K LS0tWyBlbmQgdHJhY2UgNjQ0ODBiYzgzNWViYTdkNiBdLS0tCgpGaXhlczogZmVhMTRlNjhmZjVl ICgidXNiOiBnYWRnZXQ6IHVfZXRoZXI6IHVzZSBiZXR0ZXIgbGlzdCBhY2Nlc3NvcnMiKQpTaWdu ZWQtb2ZmLWJ5OiBNYXJlayBTenlwcm93c2tpIDxtLnN6eXByb3dza2lAc2Ftc3VuZy5jb20+ClNp Z25lZC1vZmYtYnk6IEZlbGlwZSBCYWxiaSA8ZmVsaXBlLmJhbGJpQGxpbnV4LmludGVsLmNvbT4K ClNpZ25lZC1vZmYtYnk6IFNhc2hhIExldmluIDxzYXNoYWxAa2VybmVsLm9yZz4KLS0tCiBkcml2 ZXJzL3VzYi9nYWRnZXQvZnVuY3Rpb24vdV9ldGhlci5jIHwgMTEgKysrKysrLS0tLS0KIDEgZmls ZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy91c2IvZ2FkZ2V0L2Z1bmN0aW9uL3VfZXRoZXIuYyBiL2RyaXZlcnMvdXNiL2dhZGdl dC9mdW5jdGlvbi91X2V0aGVyLmMKaW5kZXggYmRiYzNmZGM3YzRmLi4zYTBlNGY1ZDdiODMgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvdXNiL2dhZGdldC9mdW5jdGlvbi91X2V0aGVyLmMKKysrIGIvZHJp dmVycy91c2IvZ2FkZ2V0L2Z1bmN0aW9uL3VfZXRoZXIuYwpAQCAtNDA1LDEyICs0MDUsMTIgQEAg c3RhdGljIGludCBhbGxvY19yZXF1ZXN0cyhzdHJ1Y3QgZXRoX2RldiAqZGV2LCBzdHJ1Y3QgZ2V0 aGVyICpsaW5rLCB1bnNpZ25lZCBuKQogc3RhdGljIHZvaWQgcnhfZmlsbChzdHJ1Y3QgZXRoX2Rl diAqZGV2LCBnZnBfdCBnZnBfZmxhZ3MpCiB7CiAJc3RydWN0IHVzYl9yZXF1ZXN0CSpyZXE7Ci0J c3RydWN0IHVzYl9yZXF1ZXN0CSp0bXA7CiAJdW5zaWduZWQgbG9uZwkJZmxhZ3M7CiAKIAkvKiBm aWxsIHVudXNlZCByeHEgc2xvdHMgd2l0aCBzb21lIHNrYiAqLwogCXNwaW5fbG9ja19pcnFzYXZl KCZkZXYtPnJlcV9sb2NrLCBmbGFncyk7Ci0JbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKHJlcSwg dG1wLCAmZGV2LT5yeF9yZXFzLCBsaXN0KSB7CisJd2hpbGUgKCFsaXN0X2VtcHR5KCZkZXYtPnJ4 X3JlcXMpKSB7CisJCXJlcSA9IGxpc3RfZmlyc3RfZW50cnkoJmRldi0+cnhfcmVxcywgc3RydWN0 IHVzYl9yZXF1ZXN0LCBsaXN0KTsKIAkJbGlzdF9kZWxfaW5pdCgmcmVxLT5saXN0KTsKIAkJc3Bp bl91bmxvY2tfaXJxcmVzdG9yZSgmZGV2LT5yZXFfbG9jaywgZmxhZ3MpOwogCkBAIC0xMTI1LDcg KzExMjUsNiBAQCB2b2lkIGdldGhlcl9kaXNjb25uZWN0KHN0cnVjdCBnZXRoZXIgKmxpbmspCiB7 CiAJc3RydWN0IGV0aF9kZXYJCSpkZXYgPSBsaW5rLT5pb3BvcnQ7CiAJc3RydWN0IHVzYl9yZXF1 ZXN0CSpyZXE7Ci0Jc3RydWN0IHVzYl9yZXF1ZXN0CSp0bXA7CiAKIAlXQVJOX09OKCFkZXYpOwog CWlmICghZGV2KQpAQCAtMTE0Miw3ICsxMTQxLDggQEAgdm9pZCBnZXRoZXJfZGlzY29ubmVjdChz dHJ1Y3QgZ2V0aGVyICpsaW5rKQogCSAqLwogCXVzYl9lcF9kaXNhYmxlKGxpbmstPmluX2VwKTsK IAlzcGluX2xvY2soJmRldi0+cmVxX2xvY2spOwotCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShy ZXEsIHRtcCwgJmRldi0+dHhfcmVxcywgbGlzdCkgeworCXdoaWxlICghbGlzdF9lbXB0eSgmZGV2 LT50eF9yZXFzKSkgeworCQlyZXEgPSBsaXN0X2ZpcnN0X2VudHJ5KCZkZXYtPnR4X3JlcXMsIHN0 cnVjdCB1c2JfcmVxdWVzdCwgbGlzdCk7CiAJCWxpc3RfZGVsKCZyZXEtPmxpc3QpOwogCiAJCXNw aW5fdW5sb2NrKCZkZXYtPnJlcV9sb2NrKTsKQEAgLTExNTQsNyArMTE1NCw4IEBAIHZvaWQgZ2V0 aGVyX2Rpc2Nvbm5lY3Qoc3RydWN0IGdldGhlciAqbGluaykKIAogCXVzYl9lcF9kaXNhYmxlKGxp bmstPm91dF9lcCk7CiAJc3Bpbl9sb2NrKCZkZXYtPnJlcV9sb2NrKTsKLQlsaXN0X2Zvcl9lYWNo X2VudHJ5X3NhZmUocmVxLCB0bXAsICZkZXYtPnJ4X3JlcXMsIGxpc3QpIHsKKwl3aGlsZSAoIWxp c3RfZW1wdHkoJmRldi0+cnhfcmVxcykpIHsKKwkJcmVxID0gbGlzdF9maXJzdF9lbnRyeSgmZGV2 LT5yeF9yZXFzLCBzdHJ1Y3QgdXNiX3JlcXVlc3QsIGxpc3QpOwogCQlsaXN0X2RlbCgmcmVxLT5s aXN0KTsKIAogCQlzcGluX3VubG9jaygmZGV2LT5yZXFfbG9jayk7Cg==