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: usb: dwc2: gadget: fix ISOC frame overflow handling From: John Keeping Message-Id: <20181109184246.33cb4487@donbot> Date: Fri, 9 Nov 2018 18:42:46 +0000 To: Minas Harutyunyan Cc: Greg Kroah-Hartman , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "arthur.petrosyan@synopsys.com" List-ID: SGkgTWluYXMsCgpPbiBGcmksIDkgTm92IDIwMTggMTQ6MzY6MzYgKzAwMDAKTWluYXMgSGFydXR5 dW55YW4gPG1pbmFzLmhhcnV0eXVueWFuQHN5bm9wc3lzLmNvbT4gd3JvdGU6Cgo+IE9uIDExLzkv MjAxOCAxMjo0MyBQTSwgTWluYXMgSGFydXR5dW55YW4gd3JvdGU6Cj4gPiBIaSBKb2huLAo+ID4g Cj4gPiBPbiAxMS84LzIwMTggOTozNyBQTSwgSm9obiBLZWVwaW5nIHdyb3RlOgo+ID4+IEhpIE1p bmFzLAo+ID4+Cj4gPj4gT24gTW9uLCA1IE5vdiAyMDE4IDA4OjI4OjA3ICswMDAwCj4gPj4gTWlu YXMgSGFydXR5dW55YW4gPG1pbmFzLmhhcnV0eXVueWFuQHN5bm9wc3lzLmNvbT4gd3JvdGU6Cj4g Pj4KPiA+Pj4gT24gMTAvMjMvMjAxOCA1OjQzIFBNLCBKb2huIEtlZXBpbmcgd3JvdGU6Cj4gPj4+ PiBCeSBjbGVhcmluZyB0aGUgb3ZlcnJ1biBmbGFnIGFzIHNvb24gYXMgdGhlIHRhcmdldCBmcmFt ZSBpcyBuZXh0Cj4gPj4+PiBpbmNyZW1lbnRlZCwgd2UgY2FuIGVuZCB1cCBpbmNyZW1lbnRpbmcg dGhlIHRhcmdldCBmcmFtZSBtb3JlCj4gPj4+PiB0aGFuIGV4cGVjdGVkIGluIGR3YzJfZ2FkZ2V0 X2hhbmRsZV9lcF9kaXNhYmxlZCgpIHdoZW4gdGhlCj4gPj4+PiBlbmRwb2ludCdzIGludGVydmFs IGlzIGdyZWF0ZXIgdGhhbiAxLiAgVGhpcyBoYXBwZW5zIGlmIHRoZQo+ID4+Pj4gdGFyZ2V0IGZy YW1lIGhhcyBqdXN0IHdyYXBwZWQgYXQgdGhlIHBvaW50IHdoZW4gdGhlIGVuZHBvaW50IGlzCj4g Pj4+PiBkaXNhYmxlZCBhbmQgdGhlIGZyYW1lIG51bWJlciBoYXMgbm90IHlldCBkb25lIHNvLgo+ ID4+Pj4KPiA+Pj4+IEluc3RlYWQsIHdhaXQgdW50aWwgdGhlIGZyYW1lIG51bWJlciBhbHNvIHdy YXBzIGFuZCB0aGVuIGNsZWFyCj4gPj4+PiB0aGUgb3ZlcnJ1biBmbGFnLgo+ID4+Pj4KPiA+Pj4+ IFNpZ25lZC1vZmYtYnk6IEpvaG4gS2VlcGluZyA8am9obkBtZXRhbmF0ZS5jb20+Cj4gPj4+PiAt LS0KPiA+Pj4+ICAgICBkcml2ZXJzL3VzYi9kd2MyL2dhZGdldC5jIHwgMiArLQo+ID4+Pj4gICAg IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQo+ID4+Pj4KPiA+ Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9kd2MyL2dhZGdldC5jCj4gPj4+PiBiL2RyaXZl cnMvdXNiL2R3YzIvZ2FkZ2V0LmMgaW5kZXggMmQ2ZDJjODI0NGRlLi44ZGEyYzA1MmRmYTEKPiA+ Pj4+IDEwMDY0NCAtLS0gYS9kcml2ZXJzL3VzYi9kd2MyL2dhZGdldC5jCj4gPj4+PiArKysgYi9k cml2ZXJzL3VzYi9kd2MyL2dhZGdldC5jCj4gPj4+PiBAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRp YyBpbmxpbmUgdm9pZAo+ID4+Pj4gZHdjMl9nYWRnZXRfaW5jcl9mcmFtZV9udW0oc3RydWN0IGR3 YzJfaHNvdGdfZXAgKmhzX2VwKSBpZgo+ID4+Pj4gKGhzX2VwLT50YXJnZXRfZnJhbWUgPiBEU1RT X1NPRkZOX0xJTUlUKSB7IGhzX2VwLT5mcmFtZV9vdmVycnVuID0KPiA+Pj4+IHRydWU7IGhzX2Vw LT50YXJnZXRfZnJhbWUgJj0gRFNUU19TT0ZGTl9MSU1JVDsKPiA+Pj4+IC0JfSBlbHNlIHsKPiA+ Pj4+ICsJfSBlbHNlIGlmIChoc19lcC0+cGFyZW50LT5mcmFtZV9udW1iZXIgPAo+ID4+Pj4gaHNf ZXAtPnRhcmdldF9mcmFtZSkgeyBoc19lcC0+ZnJhbWVfb3ZlcnJ1biA9IGZhbHNlOwo+ID4+Pj4g ICAgIAl9Cj4gPj4+PiAgICAgfQo+ID4+Pj4gICAgIAo+ID4+PiBEaWQgeW91IHRlc3RlZCBtZW50 aW9uZWQgYnkgeW91IHNjZW5hcmlvPyBJZiB5b3Ugc2VlIGlzc3VlIGNhbiB5b3UKPiA+Pj4gcHJv dmlkZSBkZWJ1ZyBsb2cgYW5kIHBvaW50IHRoZSBpc3N1ZSBsaW5lIGluIHRoZSBsb2cuCj4gPj4K PiA+PiBJdCBvbmx5IHJlcHJvZHVjZXMgdmVyeSBvY2Nhc2lvbmFsbHkgc28gaXQncyBkaWZmaWN1 bHQgdG8gY2FwdHVyZQo+ID4+IGEgZnVsbCBkZWJ1ZyBsb2cgY29udGFpbmluZyB0aGUgZXJyb3Iu Cj4gPj4KPiA+PiBJIGFwcGxpZWQgdGhpcyBwYXRjaCB0byBjYXB0dXJlIGxvZ2dpbmcgc3BlY2lm aWNhbGx5IGFyb3VuZCB0aGlzCj4gPj4gc2NlbmFyaW86Cj4gPj4KPiA+PiAtLSA+OCAtLQo+ID4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9kd2MyL2dhZGdldC5jIGIvZHJpdmVycy91c2IvZHdj Mi9nYWRnZXQuYwo+ID4+IGluZGV4IDIyMGMwZjliODliMC4uMzc3MGI5ZDNiNTIzIDEwMDY0NAo+ ID4+IC0tLSBhL2RyaXZlcnMvdXNiL2R3YzIvZ2FkZ2V0LmMKPiA+PiArKysgYi9kcml2ZXJzL3Vz Yi9kd2MyL2dhZGdldC5jCj4gPj4gQEAgLTI3MjIsMTMgKzI3MjIsMjAgQEAgc3RhdGljIHZvaWQK PiA+PiBkd2MyX2dhZGdldF9oYW5kbGVfZXBfZGlzYWJsZWQoc3RydWN0IGR3YzJfaHNvdGdfZXAg KmhzX2VwKSB9Cj4gPj4gICAgCj4gPj4gICAgICAgICAgIGRvIHsKPiA+PiArICAgICAgICAgICAg ICAgdW5zaWduZWQgaW50IHRhcmdldF9mcmFtZSA9IGhzX2VwLT50YXJnZXRfZnJhbWU7Cj4gPj4g KyAgICAgICAgICAgICAgIGJvb2wgZnJhbWVfb3ZlcnJ1biA9IGhzX2VwLT5mcmFtZV9vdmVycnVu Owo+ID4+ICsKPiA+PiAgICAgICAgICAgICAgICAgICBoc19yZXEgPSBnZXRfZXBfaGVhZChoc19l cCk7Cj4gPj4gICAgICAgICAgICAgICAgICAgaWYgKGhzX3JlcSkKPiA+PiAgICAgICAgICAgICAg ICAgICAgICAgICAgIGR3YzJfaHNvdGdfY29tcGxldGVfcmVxdWVzdChoc290ZywKPiA+PiBoc19l cCwgaHNfcmVxLCAtRU5PREFUQSk7Cj4gPj4gKwo+ID4+ICAgICAgICAgICAgICAgICAgIGR3YzJf Z2FkZ2V0X2luY3JfZnJhbWVfbnVtKGhzX2VwKTsKPiA+PiAgICAgICAgICAgICAgICAgICAvKiBV cGRhdGUgY3VycmVudCBmcmFtZSBudW1iZXIgdmFsdWUuICovCj4gPj4gICAgICAgICAgICAgICAg ICAgaHNvdGctPmZyYW1lX251bWJlciA9Cj4gPj4gZHdjMl9oc290Z19yZWFkX2ZyYW1lbm8oaHNv dGcpOyArCj4gPj4gKyAgICAgICAgICAgICAgIGRldl93YXJuKGhzb3RnLT5kZXYsICIlczogZXhw aXJpbmcgcmVxdWVzdAo+ID4+IGZyYW1lX251bWJlcj0weCUwNHggdGFyZ2V0X2ZyYW1lPTB4JTA0 eCBvdmVycnVuPSV1XG4iLAo+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICBfX2Z1bmNfXywg aHNvdGctPmZyYW1lX251bWJlciwKPiA+PiB0YXJnZXRfZnJhbWUsIGZyYW1lX292ZXJydW4pOyB9 IHdoaWxlCj4gPj4gKGR3YzJfZ2FkZ2V0X3RhcmdldF9mcmFtZV9lbGFwc2VkKGhzX2VwKSk7IAo+ ID4+ICAgICAgICAgICBkd2MyX2dhZGdldF9zdGFydF9uZXh0X3JlcXVlc3QoaHNfZXApOwo+ID4+ IC0tIDg8IC0tCj4gPj4KPiA+IEFjY29yZGluZyBhYm92ZSBwYXRjaCBpbiBkZWJ1ZyBsb2cgc2hv dWxkIGJlIHByaW50ZWQgb3ZlcnJ1biBmbGFnCj4gPiBhbHNvLiBDb3VsZCB5b3UgcGxlYXNlIHJl c2VuZCBsb2cgd2l0aCB0aGlzIGZsYWcuCgpEJ29oISAgSSBpbmNsdWRlZCBhIGxvZyBmcm9tIGFu IGVhcmxpZXIgdmVyc2lvbiBiZWZvcmUgSSBhZGRlZCB0aGUKb3ZlcnJ1biBmbGFnLgoKPiBPbmUg bW9yZSByZXF1ZXN0LiBQbGVhc2UgYWRkIEVQIG51bWJlciB0byBkZWJ1ZyBwcmludC4KCkhlcmUn cyBhbiB1cGRhdGVkIGxvZzoKCi0tID44IC0tClsgIDI2NC45MjYzODVdIGR3YzIgZmY1ODAwMDAu dXNiOiBkd2MyX2dhZGdldF9oYW5kbGVfZXBfZGlzYWJsZWQ6IGV4cGlyaW5nIHJlcXVlc3QgZXA9 MiBmcmFtZV9udW1iZXI9MHgyMTYxIHRhcmdldF9mcmFtZT0weDIxNjggb3ZlcnJ1bj0wClsgIDI2 NS45MDU0MTNdIGR3YzIgZmY1ODAwMDAudXNiOiBkd2MyX2dhZGdldF9oYW5kbGVfZXBfZGlzYWJs ZWQ6IGV4cGlyaW5nIHJlcXVlc3QgZXA9MiBmcmFtZV9udW1iZXI9MHgzZmY5IHRhcmdldF9mcmFt ZT0weDAwMDggb3ZlcnJ1bj0wClsgIDI2NS45MDU0MjFdIGR3YzIgZmY1ODAwMDAudXNiOiBkd2My X2dhZGdldF9oYW5kbGVfZXBfZGlzYWJsZWQ6IGV4cGlyaW5nIHJlcXVlc3QgZXA9MiBmcmFtZV9u dW1iZXI9MHgzZmY5IHRhcmdldF9mcmFtZT0weDAwMTAgb3ZlcnJ1bj0wClsgIDI2NS45MDU0Mjdd IGR3YzIgZmY1ODAwMDAudXNiOiBkd2MyX2dhZGdldF9oYW5kbGVfZXBfZGlzYWJsZWQ6IGV4cGly aW5nIHJlcXVlc3QgZXA9MiBmcmFtZV9udW1iZXI9MHgzZmY5IHRhcmdldF9mcmFtZT0weDAwMTgg b3ZlcnJ1bj0wClsgIDI2NS45MDU0MzJdIGR3YzIgZmY1ODAwMDAudXNiOiBkd2MyX2dhZGdldF9o YW5kbGVfZXBfZGlzYWJsZWQ6IGV4cGlyaW5nIHJlcXVlc3QgZXA9MiBmcmFtZV9udW1iZXI9MHgz ZmY5IHRhcmdldF9mcmFtZT0weDAwMjAgb3ZlcnJ1bj0wClsgIDI2NS45MDU0MzhdIGR3YzIgZmY1 ODAwMDAudXNiOiBkd2MyX2dhZGdldF9oYW5kbGVfZXBfZGlzYWJsZWQ6IGV4cGlyaW5nIHJlcXVl c3QgZXA9MiBmcmFtZV9udW1iZXI9MHgzZmY5IHRhcmdldF9mcmFtZT0weDAwMjggb3ZlcnJ1bj0w ClsgIDI2NS45MDU0NDNdIGR3YzIgZmY1ODAwMDAudXNiOiBkd2MyX2dhZGdldF9oYW5kbGVfZXBf ZGlzYWJsZWQ6IGV4cGlyaW5nIHJlcXVlc3QgZXA9MiBmcmFtZV9udW1iZXI9MHgzZmY5IHRhcmdl dF9mcmFtZT0weDAwMzAgb3ZlcnJ1bj0wClsgIDI2NS45MDU0NDhdIGR3YzIgZmY1ODAwMDAudXNi OiBkd2MyX2dhZGdldF9oYW5kbGVfZXBfZGlzYWJsZWQ6IGV4cGlyaW5nIHJlcXVlc3QgZXA9MiBm cmFtZV9udW1iZXI9MHgzZmY5IHRhcmdldF9mcmFtZT0weDAwMzggb3ZlcnJ1bj0wClsgIDI2NS45 MDU0NTRdIGR3YzIgZmY1ODAwMDAudXNiOiBkd2MyX2dhZGdldF9oYW5kbGVfZXBfZGlzYWJsZWQ6 IGV4cGlyaW5nIHJlcXVlc3QgZXA9MiBmcmFtZV9udW1iZXI9MHgzZmY5IHRhcmdldF9mcmFtZT0w eDAwNDAgb3ZlcnJ1bj0wClsgIDI2NS45MDU0NTldIGR3YzIgZmY1ODAwMDAudXNiOiBkd2MyX2dh ZGdldF9oYW5kbGVfZXBfZGlzYWJsZWQ6IGV4cGlyaW5nIHJlcXVlc3QgZXA9MiBmcmFtZV9udW1i ZXI9MHgzZmY5IHRhcmdldF9mcmFtZT0weDAwNDggb3ZlcnJ1bj0wCi0tIDg8IC0tCgpPbmNlIGFn YWluIHRoZXJlIGlzIGFuIGluaXRpYWwgZmFpbHVyZSBiZWZvcmUgaXQgZW50ZXJzIHRoZSBmYWls dXJlIG1vZGUKbXkgcGF0Y2ggaXMgdHJ5aW5nIHRvIGFkZHJlc3MuICBUaGlzIHNlZW1zIHRvIGJl IGNvbnNpc3RlbnQsIHNvIGl0IG1heQpiZSBpbXBvcnRhbnQsIGJ1dCB0aGVyZSBpcyB+ODBtcyBi ZWZvcmUgdGhlIGZhaWx1cmUgc3RhcnRzLgoKPiA+PiBUaGlzIHdhcyBvbiB2NC4xOSB3aXRoIGFu IGFkZGl0aW9uYWwgcGF0Y2ggdG8gZGlzYWJsZSBkZXNjcmlwdG9yCj4gPj4gRE1BIGJlY2F1c2Ug dGhhdCBzZWVtcyB0byBiZSBjYXVzaW5nIHByb2JsZW1zIG9uIFJLMzI4OCBhbHRob3VnaCBJCj4g Pj4gaGF2ZW4ndCBmaWd1cmVkIG91dCBleGFjdGx5IHdoeSBpdCdzIGEgcHJvYmxlbS4KPiA+IAo+ ID4gSW4gd2hpY2ggbW9kZSB5b3UgcnVuIHRlc3RzIFNsYXZlIG9yIEJ1ZmZlciBETUE/CgpCdWZm ZXIgRE1BIGJ1dCB3aXRoIGRlc2NyaXB0b3IgRE1BIGZvcmNlZCBvZmYgKGdfZG1hPTEsIGdfZG1h X2Rlc2M9MCkuCgpGb3IgdGhlIHJlY29yZCwgbXkgdGVzdCBjYXNlIGlzIHRoZSBzdGFuZGFyZCBV QUMyIGdhZGdldCB3aXRoOgoKCWNfc3JhdGUgPSBwX3NyYXRlID0gNDQxMDAKCWNfc3NpemUgPSBw X3NzaXplID0gNAoJY19jaG1hc2sgPSAweGYKCXBfY2htYXNrID0gMwoKYW5kIGl0IHNlZW1zIHRo YXQgdGhlIGZhaWx1cmUgb25seSB0cmlnZ2VycyB3aGVuIHVzaW5nIGFyZWNvcmQgdG8KY2FwdHVy ZSBmcm9tIHRoZSBnYWRnZXQgaW50ZXJmYWNlICh0aGlzIGlzIHdpdGggYSBob3N0IHByb2dyYW0g Ym90aApzdHJlYW1pbmcgaW4gYm90aCBkaXJlY3Rpb25zIG92ZXIgdGhlIFVTQiBjb25uZWN0aW9u KTsgSSBzdXNwZWN0IHRoYXQKYWN0dWFsbHkgaXQganVzdCBtYWtlcyBpdCBtb3JlIGxpa2VseSBi ZWNhdXNlIHRoZXJlIGlzIG1vcmUgd29yayBkb25lIGluCnRoZSBjb21wbGV0aW9uIGhhbmRsZXIs IGJ1dCBJIGhhdmVuJ3Qgc2VlbiB0aGUgZmFpbHVyZSB3aXRob3V0IGFyZWNvcmQKcnVubmluZy4K CgpSZWdhcmRzLApKb2huCg==