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: [4.9,086/148] usb: gadget: udc: net2280: Fix tmp reusage in net2280 driver From: Greg Kroah-Hartman Message-Id: <20171212124436.148277723@linuxfoundation.org> Date: Tue, 12 Dec 2017 13:44:56 +0100 To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Felipe Balbi , linux-usb@vger.kernel.org, Raz Manor , Felipe Balbi , Sasha Levin List-ID: NC45LXN0YWJsZSByZXZpZXcgcGF0Y2guICBJZiBhbnlvbmUgaGFzIGFueSBvYmplY3Rpb25zLCBw bGVhc2UgbGV0IG1lIGtub3cuCgotLS0tLS0tLS0tLS0tLS0tLS0KCkZyb206IFJheiBNYW5vciA8 UmF6Lk1hbm9yQHZhbGVucy5jb20+CgoKWyBVcHN0cmVhbSBjb21taXQgZWY1ZTJmYTlmNjViZWZh MTJmMTExM2M3MzQ2MDJkMmMxOTY0ZDJhNSBdCgpJbiB0aGUgZnVuY3Rpb24gc2Nhbl9kbWFfY29t cGxldGlvbnMoKSB0aGVyZSBpcyBhIHJldXNhZ2Ugb2YgdG1wCnZhcmlhYmxlLiBUaGF0IGNvdXNl ZCBhIHdyb25nIHZhbHVlIGJlaW5nIHVzZWQgaW4gc29tZSBjYXNlIHdoZW4KcmVhZGluZyBhIHNo b3J0IHBhY2tldCB0ZXJtaW5hdGVkIHRyYW5zYWN0aW9uIGZyb20gYW4gZW5kcG9pbnQsCmluIDIg Y29uY2VjdXRpdmUgcmVhZHMuCgpUaGlzIHdhcyBteSBsb2dpYyBmb3IgdGhlIHBhdGNoOgoKVGhl IHJlcS0+dGQtPmRtYWRlc2MgZXF1YWxzIHRvIDAgaWZmOgotLSBUaGVyZSB3YXMgYSB0cmFuc2Fj dGlvbiBlbmRpbmcgd2l0aCBhIHNob3J0IHBhY2tldCwgYW5kCi0tIFRoZSByZWFkKCkgdG8gcmVh ZCBpdCB3YXMgc2hvcnRlciB0aGFuIHRoZSB0cmFuc2FjdGlvbiBsZW5ndGgsIGFuZAotLSBUaGUg cmVhZCgpIHRvIGNvbXBsZXRlIGl0IGlzIGxvbmdlciB0aGFuIHRoZSByZXNpZHVlLgpJIGJlbGll dmUgdGhpcyBpcyB0cnVlIGZyb20gdGhlIHByaW50b3V0cyBvZiB2YXJpb3VzIGNhc2VzLApidXQg SSBjYW4ndCBiZSBwb3NpdGl2ZSBpdCBpcyBjb3JyZWN0LgoKRW50ZXJpbmcgdGhpcyBpZiwgdGhl cmUgc2hvdWxkIGJlIG5vIG1vcmUgZGF0YSBpbiB0aGUgZW5kcG9pbnQKKGEgc2hvcnQgcGFja2V0 IHRlcm1pbmF0ZWQgdGhlIHRyYW5zYWN0aW9uKS4KSWYgdGhlcmUgaXMsIHRoZSB0cmFuc2FjdGlv biB3YXNuJ3QgcmVhbGx5IGRvbmUgYW5kIHdlIHNob3VsZCBleGl0IGFuZAp3YWl0IGZvciBpdCB0 byBmaW5pc2ggZW50aXJlbHkuIFRoYXQgaXMgdGhlIGlubmVyIGlmLgpUaGF0IGlubmVyIGlmIHNo b3VsZCBuZXZlciBoYXBwZW4sIGJ1dCBpdCBpcyB0aGVyZSB0byBiZSBvbiB0aGUgc2FmZQpzaWRl LiBUaGF0IGlzIHdoeSBpdCBpcyBtYXJrZWQgd2l0aCB0aGUgY29tbWVudCAvKiBwYXJhbm9pYSAq Ly4KVGhlIHNpemUgb2YgdGhlIGRhdGEgYXZhaWxhYmxlIGluIHRoZSBlbmRwb2ludCBpcyBlcC0+ ZG1hLT5kbWFjb3VudAphbmQgaXQgaXMgcmVhZCB0byB0bXAuClRoaXMgZW50aXJlIGNsYXVzZSBp cyBiYXNlZCBvbiBteSBvd24gZWR1Y2F0ZWQgZ3Vlc3Nlcy4KCklmIHdlIHBhc3NlZCB0aGF0IGlu bmVyIGlmIHdpdGhvdXQgYnJlYWtpbmcgaW4gdGhlIG9yaWdpbmFsIGNvZGUsCnRoYW4gdG1wICYg RE1BX0JZVEVfTUFTS19DT1VOVD09IDAuClRoYXQgbWVhbnMgd2Ugd2lsbCBhbHdheXMgcGFzcyBk bWEgYnl0ZXMgY291bnQgb2YgMCB0byBkbWFfZG9uZSgpLAptZWFuaW5nIGFsbCB0aGUgcmVxdWVz dGVkIGJ5dGVzIHdlcmUgcmVhZC4KCmRtYV9kb25lKCkgcmVwb3J0cyBiYWNrIHRvIHRoZSB1cHBl ciBsYXllciB0aGF0IHRoZSByZXF1ZXN0IChyZWFkKCkpCndhcyBkb25lIGFuZCBob3cgbWFueSBi eXRlcyB3ZXJlIHJlYWQuCkluIHRoZSBvcmlnaW5hbCBjb2RlIHRoYXQgd291bGQgYWx3YXlzIGJl IHRoZSByZXF1ZXN0IHNpemUsCnJlZ2FyZGxlc3Mgb2YgdGhlIGFjdHVhbCBzaXplIG9mIHRoZSBk YXRhLgpUaGF0IGRpZCBub3QgbWFrZSBzZW5zZSB0byBtZSBhdCBhbGwuCgpIb3dldmVyLCB0aGUg b3JpZ2luYWwgdmFsdWUgb2YgdG1wIGlzIHJlcS0+dGQtPmRtYWNvdW50LAp3aGljaCBpcyB0aGUg ZG1hY291bnQgdmFsdWUgd2hlbiB0aGUgcmVxdWVzdCdzIGRtYSB0cmFuc2FjdGlvbiB3YXMKZmlu aXNoZWQuIEFuZCB0aGF0IGlzIGEgbXVjaCBtb3JlIHJlYXNvbmFibGUgdmFsdWUgdG8gcmVwb3J0 IGJhY2sgdG8KdGhlIGNhbGxlci4KClRvIHJlY3JlYXRlIHRoZSBwcm9ibGVtOgpSZWFkIGZyb20g YSBidWxrIG91dCBlbmRwb2ludCBpbiBhIGxvb3AsIDEwMjQgKiBuIGJ5dGVzIGluIGVhY2gKaXRl cmF0aW9uLgpDb25uZWN0IHRoZSBQTFggdG8gYSBob3N0IHlvdSBjYW4gY29udHJvbC4KU2VuZCB0 byB0aGF0IGVuZHBvaW50IDEwMjQgKiBuICsgeCBieXRlcywKc3VjaCB0aGF0IDAgPCB4IDwgMTAy NCAqIG4gYW5kICh4ICUgMTAyNCkgIT0gMApZb3Ugd291bGQgZXhwZWN0IHRoZSBmaXJzdCByZWFk KCkgdG8gcmV0dXJuIDEwMjQgKiBuCmFuZCB0aGUgc2Vjb25kIHJlYWQoKSB0byByZXR1cm4geC4K QnV0IHlvdSB3aWxsIGdldCB0aGUgZmlyc3QgcmVhZCB0byByZXR1cm4gMTAyNCAqIG4KYW5kIHRo ZSBzZWNvbmQgb25lIHRvIHJldHVybiAxMDI0ICogbi4KVGhhdCBpcyB0cnVlIGZvciBldmVyeSBw b3NpdGl2ZSBpbnRlZ2VyIG4uCgpDYzogRmVsaXBlIEJhbGJpIDxiYWxiaUBrZXJuZWwub3JnPgpD YzogR3JlZyBLcm9haC1IYXJ0bWFuIDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZz4KQ2M6IGxp bnV4LXVzYkB2Z2VyLmtlcm5lbC5vcmcKU2lnbmVkLW9mZi1ieTogUmF6IE1hbm9yIDxSYXouTWFu b3JAdmFsZW5zLmNvbT4KU2lnbmVkLW9mZi1ieTogRmVsaXBlIEJhbGJpIDxmZWxpcGUuYmFsYmlA bGludXguaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBTYXNoYSBMZXZpbiA8YWxleGFuZGVyLmxl dmluQHZlcml6b24uY29tPgpTaWduZWQtb2ZmLWJ5OiBHcmVnIEtyb2FoLUhhcnRtYW4gPGdyZWdr aEBsaW51eGZvdW5kYXRpb24ub3JnPgotLS0KIGRyaXZlcnMvdXNiL2dhZGdldC91ZGMvbmV0MjI4 MC5jIHwgICAyNSArKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTMg aW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCgoKCi0tClRvIHVuc3Vic2NyaWJlIGZyb20g dGhpcyBsaXN0OiBzZW5kIHRoZSBsaW5lICJ1bnN1YnNjcmliZSBsaW51eC11c2IiIGluCnRoZSBi b2R5IG9mIGEgbWVzc2FnZSB0byBtYWpvcmRvbW9Admdlci5rZXJuZWwub3JnCk1vcmUgbWFqb3Jk b21vIGluZm8gYXQgIGh0dHA6Ly92Z2VyLmtlcm5lbC5vcmcvbWFqb3Jkb21vLWluZm8uaHRtbAoK LS0tIGEvZHJpdmVycy91c2IvZ2FkZ2V0L3VkYy9uZXQyMjgwLmMKKysrIGIvZHJpdmVycy91c2Iv Z2FkZ2V0L3VkYy9uZXQyMjgwLmMKQEAgLTExNDYsMTUgKzExNDYsMTUgQEAgc3RhdGljIGludCBz Y2FuX2RtYV9jb21wbGV0aW9ucyhzdHJ1Y3QgbgogCSAqLwogCXdoaWxlICghbGlzdF9lbXB0eSgm ZXAtPnF1ZXVlKSkgewogCQlzdHJ1Y3QgbmV0MjI4MF9yZXF1ZXN0CSpyZXE7Ci0JCXUzMgkJCXRt cDsKKwkJdTMyIHJlcV9kbWFfY291bnQ7CiAKIAkJcmVxID0gbGlzdF9lbnRyeShlcC0+cXVldWUu bmV4dCwKIAkJCQlzdHJ1Y3QgbmV0MjI4MF9yZXF1ZXN0LCBxdWV1ZSk7CiAJCWlmICghcmVxLT52 YWxpZCkKIAkJCWJyZWFrOwogCQlybWIoKTsKLQkJdG1wID0gbGUzMl90b19jcHVwKCZyZXEtPnRk LT5kbWFjb3VudCk7Ci0JCWlmICgodG1wICYgQklUKFZBTElEX0JJVCkpICE9IDApCisJCXJlcV9k bWFfY291bnQgPSBsZTMyX3RvX2NwdXAoJnJlcS0+dGQtPmRtYWNvdW50KTsKKwkJaWYgKChyZXFf ZG1hX2NvdW50ICYgQklUKFZBTElEX0JJVCkpICE9IDApCiAJCQlicmVhazsKIAogCQkvKiBTSE9S VF9QQUNLRVRfVFJBTlNGRVJSRURfSU5URVJSVVBUIGhhbmRsZXMgInVzYi1zaG9ydCIKQEAgLTEx NjMsNDAgKzExNjMsNDEgQEAgc3RhdGljIGludCBzY2FuX2RtYV9jb21wbGV0aW9ucyhzdHJ1Y3Qg bgogCQkgKi8KIAkJaWYgKHVubGlrZWx5KHJlcS0+dGQtPmRtYWRlc2MgPT0gMCkpIHsKIAkJCS8q IHBhcmFub2lhICovCi0JCQl0bXAgPSByZWFkbCgmZXAtPmRtYS0+ZG1hY291bnQpOwotCQkJaWYg KHRtcCAmIERNQV9CWVRFX0NPVU5UX01BU0spCisJCQl1MzIgY29uc3QgZXBfZG1hY291bnQgPSBy ZWFkbCgmZXAtPmRtYS0+ZG1hY291bnQpOworCisJCQlpZiAoZXBfZG1hY291bnQgJiBETUFfQllU RV9DT1VOVF9NQVNLKQogCQkJCWJyZWFrOwogCQkJLyogc2luZ2xlIHRyYW5zZmVyIG1vZGUgKi8K LQkJCWRtYV9kb25lKGVwLCByZXEsIHRtcCwgMCk7CisJCQlkbWFfZG9uZShlcCwgcmVxLCByZXFf ZG1hX2NvdW50LCAwKTsKIAkJCW51bV9jb21wbGV0ZWQrKzsKIAkJCWJyZWFrOwogCQl9IGVsc2Ug aWYgKCFlcC0+aXNfaW4gJiYKIAkJCSAgIChyZXEtPnJlcS5sZW5ndGggJSBlcC0+ZXAubWF4cGFj a2V0KSAmJgogCQkJICAgIShlcC0+ZGV2LT5xdWlya3MgJiBQTFhfUENJRSkpIHsKIAotCQkJdG1w ID0gcmVhZGwoJmVwLT5yZWdzLT5lcF9zdGF0KTsKKwkJCXUzMiBjb25zdCBlcF9zdGF0ID0gcmVh ZGwoJmVwLT5yZWdzLT5lcF9zdGF0KTsKIAkJCS8qIEFWT0lEIFRST1VCTEUgSEVSRSBieSBub3Qg aXNzdWluZyBzaG9ydCByZWFkcyBmcm9tCiAJCQkgKiB5b3VyIGdhZGdldCBkcml2ZXIuICBUaGF0 IGhlbHBzIGF2b2lkcyBlcnJhdGEgMDEyMSwKIAkJCSAqIDAxMjIsIGFuZCAwMTI0OyBub3QgYWxs IGNhc2VzIHRyaWdnZXIgdGhlIHdhcm5pbmcuCiAJCQkgKi8KLQkJCWlmICgodG1wICYgQklUKE5B S19PVVRfUEFDS0VUUykpID09IDApIHsKKwkJCWlmICgoZXBfc3RhdCAmIEJJVChOQUtfT1VUX1BB Q0tFVFMpKSA9PSAwKSB7CiAJCQkJZXBfd2FybihlcC0+ZGV2LCAiJXMgbG9zdCBwYWNrZXQgc3lu YyFcbiIsCiAJCQkJCQllcC0+ZXAubmFtZSk7CiAJCQkJcmVxLT5yZXEuc3RhdHVzID0gLUVPVkVS RkxPVzsKIAkJCX0gZWxzZSB7Ci0JCQkJdG1wID0gcmVhZGwoJmVwLT5yZWdzLT5lcF9hdmFpbCk7 Ci0JCQkJaWYgKHRtcCkgeworCQkJCXUzMiBjb25zdCBlcF9hdmFpbCA9IHJlYWRsKCZlcC0+cmVn cy0+ZXBfYXZhaWwpOworCQkJCWlmIChlcF9hdmFpbCkgewogCQkJCQkvKiBmaWZvIGdldHMgZmx1 c2hlZCBsYXRlciAqLwogCQkJCQllcC0+b3V0X292ZXJmbG93ID0gMTsKIAkJCQkJZXBfZGJnKGVw LT5kZXYsCiAJCQkJCQkiJXMgZG1hLCBkaXNjYXJkICVkIGxlbiAlZFxuIiwKLQkJCQkJCWVwLT5l cC5uYW1lLCB0bXAsCisJCQkJCQllcC0+ZXAubmFtZSwgZXBfYXZhaWwsCiAJCQkJCQlyZXEtPnJl cS5sZW5ndGgpOwogCQkJCQlyZXEtPnJlcS5zdGF0dXMgPSAtRU9WRVJGTE9XOwogCQkJCX0KIAkJ CX0KIAkJfQotCQlkbWFfZG9uZShlcCwgcmVxLCB0bXAsIDApOworCQlkbWFfZG9uZShlcCwgcmVx LCByZXFfZG1hX2NvdW50LCAwKTsKIAkJbnVtX2NvbXBsZXRlZCsrOwogCX0KIAo=