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: [3/3] usb: dwc2: host: do not schedule delayed QH unnecessarily From: Torokhov Message-Id: <20180616001923.GA84824@dtor-ws> Date: Fri, 15 Jun 2018 17:19:23 -0700 To: Doug Anderson Cc: Felipe Balbi , Minas Harutyunyan , Greg Kroah-Hartman , linux-usb@vger.kernel.org, LKML List-ID: T24gRnJpLCBKdW4gMTUsIDIwMTggYXQgMDU6MDA6MDNQTSAtMDcwMCwgRG91ZyBBbmRlcnNvbiB3 cm90ZToKPiBIaSwKPiAKPiBPbiBGcmksIEp1biAxNSwgMjAxOCBhdCAzOjAxIFBNLCBEbWl0cnkg VG9yb2tob3YKPiA8ZG1pdHJ5LnRvcm9raG92QGdtYWlsLmNvbT4gd3JvdGU6Cj4gPiBXaGVuIHdl IGFyZSByZWFkeSB0byByZXRyeSB0aGUgZGVsYXllZCBRSCwgd2UgZG8gbm90IG5lZWQgdG8gbWFu dWFsbHkKPiA+IHNjYW4gcXVldWVzIGFuZCBzY2hlZHVsZSB0aGVtIGlmIGNvbnRyb2xsZXIgaXMg YWxyZWFkeSBydW5uaW5nOyB3ZSBvbmx5Cj4gPiBuZWVkIHRvIGRvIHRoYXQgaWYgU09GIGludGVy cnVwdCBpcyBtYXNrZWQsIG90aGVyd2lzZSB3ZSdsbCBwaWNrIHRoZW0gdXAKPiA+IGF0IHRoZSBu ZXh0IGZyYW1lLgo+IAo+IEp1c3QgdG8gY29uZmlybTogdGhpcyBwYXRjaCBmaXhlcyBubyBrbm93 biBpc3N1ZXMsIHJpZ2h0PyAgSXQncyBiYXNlZAo+IG9uIGNvZGUgaW5zcGVjdGlvbj8KClRoYXQg aXMgY29ycmVjdC4KCj4gCj4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBEbWl0cnkgVG9yb2tob3YgPGRt aXRyeS50b3Jva2hvdkBnbWFpbC5jb20+Cj4gPiAtLS0KPiA+ICBkcml2ZXJzL3VzYi9kd2MyL2hj ZF9xdWV1ZS5jIHwgMzEgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQo+ID4gIDEgZmls ZSBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKPiA+Cj4gPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy91c2IvZHdjMi9oY2RfcXVldWUuYyBiL2RyaXZlcnMvdXNiL2R3YzIv aGNkX3F1ZXVlLmMKPiA+IGluZGV4IGUzNGFkNWU2NTM1MDEuLmRiOWU3YzlkMzE1NTQgMTAwNjQ0 Cj4gPiAtLS0gYS9kcml2ZXJzL3VzYi9kd2MyL2hjZF9xdWV1ZS5jCj4gPiArKysgYi9kcml2ZXJz L3VzYi9kd2MyL2hjZF9xdWV1ZS5jCj4gPiBAQCAtMTQ2OCw2ICsxNDY4LDggQEAgc3RhdGljIHZv aWQgZHdjMl93YWl0X3RpbWVyX2ZuKHN0cnVjdCB0aW1lcl9saXN0ICp0KQo+ID4gIHsKPiA+ICAg ICAgICAgc3RydWN0IGR3YzJfcWggKnFoID0gZnJvbV90aW1lcihxaCwgdCwgd2FpdF90aW1lcik7 Cj4gPiAgICAgICAgIHN0cnVjdCBkd2MyX2hzb3RnICpoc290ZyA9IHFoLT5oc290ZzsKPiA+ICsg ICAgICAgZW51bSBkd2MyX3RyYW5zYWN0aW9uX3R5cGUgdHJfdHlwZTsKPiA+ICsgICAgICAgdTMy IGludHJfbWFzazsKPiA+ICAgICAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKPiA+Cj4gPiAgICAg ICAgIHNwaW5fbG9ja19pcnFzYXZlKCZoc290Zy0+bG9jaywgZmxhZ3MpOwo+ID4gQEAgLTE0NzYs MTkgKzE0NzgsMjIgQEAgc3RhdGljIHZvaWQgZHdjMl93YWl0X3RpbWVyX2ZuKHN0cnVjdCB0aW1l cl9saXN0ICp0KQo+ID4gICAgICAgICAgKiBXZSdsbCBzZXQgd2FpdF90aW1lcl9jYW5jZWwgdG8g dHJ1ZSBpZiB3ZSB3YW50IHRvIGNhbmNlbCB0aGlzCj4gPiAgICAgICAgICAqIG9wZXJhdGlvbiBp biBkd2MyX2hjZF9xaF91bmxpbmsoKS4KPiA+ICAgICAgICAgICovCj4gPiAtICAgICAgIGlmICgh cWgtPndhaXRfdGltZXJfY2FuY2VsKSB7Cj4gPiAtICAgICAgICAgICAgICAgZW51bSBkd2MyX3Ry YW5zYWN0aW9uX3R5cGUgdHJfdHlwZTsKPiA+ICsgICAgICAgaWYgKHFoLT53YWl0X3RpbWVyX2Nh bmNlbCkKPiA+ICsgICAgICAgICAgICAgICBnb3RvIG91dF91bmxvY2s7Cj4gPgo+ID4gLSAgICAg ICAgICAgICAgIHFoLT53YW50X3dhaXQgPSBmYWxzZTsKPiAKPiBUaGUgcmVtb3ZhbCBvZiB0aGlz ICJ3YW50X3dhaXQgPSBmYWxzZSIgaXNuJ3QgbWVudGlvbmVkIGluIHRoZSBjb21taXQKPiBtZXNz YWdlIGFuZCBzZWVtcyB1bnJlbGF0ZWQuICBEaWQgeW91IGRlY2lkZSB0aGF0IHNldHRpbmcgdGhp cyB0bwo+IGZhbHNlIGlzIG5vdCBpbXBvcnRhbnQgYW5kIHRodXMgeW91J3JlIHJlbW92aW5nIGl0 PyAgQ291bGQgeW91IG1vdmUKPiB0aGlzIHBhcnQgdG8gYSBzZXBhcmF0ZSBwYXRjaD8KClllcyBJ IHdpbGwuIE15IG9waW5pb24gaXMgdGhhdCB3ZSBzZXQvcmVzZXQgdGhlIGZsYWcgaW4gaGNkX2lu dHIuYyB3aGVuCndlIHJlY2VpdmUgYSBOQUsuIFNjaGVkdWxpbmcgYSB0cmFuc2ZlciBkb2VzIG5v dCByZWFsbHkgYWZmZWN0IHRoZSBzdGF0ZQpvZiAiTkFLaW5lc3MiIG9mIHRoZSBRSCwgc28gaXQg aXMgbm90IHJpZ2h0IHRvIHJlbW92ZSB0aGUgZmxhZy4KCj4gCj4gCj4gPiArICAgICAgIGxpc3Rf bW92ZSgmcWgtPnFoX2xpc3RfZW50cnksICZoc290Zy0+bm9uX3BlcmlvZGljX3NjaGVkX2luYWN0 aXZlKTsKPiA+Cj4gPiAtICAgICAgICAgICAgICAgbGlzdF9tb3ZlKCZxaC0+cWhfbGlzdF9lbnRy eSwKPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICAgJmhzb3RnLT5ub25fcGVyaW9kaWNfc2No ZWRfaW5hY3RpdmUpOwo+ID4gKyAgICAgICAvKiBTZWUgaWYgd2Ugc2hvdWxkIGtpY2sgdGhlIGNv bnRyb2xsZXIgaWYgaXQgd2FzIGlkbGUgKi8KPiA+ICsgICAgICAgaW50cl9tYXNrID0gZHdjMl9y ZWFkbChoc290Zy0+cmVncyArIEdJTlRNU0spOwo+ID4gKyAgICAgICBpZiAoaW50cl9tYXNrICYg R0lOVFNUU19TT0YpCj4gPiArICAgICAgICAgICAgICAgZ290byBvdXRfdW5sb2NrOwo+ID4KPiA+ IC0gICAgICAgICAgICAgICB0cl90eXBlID0gZHdjMl9oY2Rfc2VsZWN0X3RyYW5zYWN0aW9ucyho c290Zyk7Cj4gPiAtICAgICAgICAgICAgICAgaWYgKHRyX3R5cGUgIT0gRFdDMl9UUkFOU0FDVElP Tl9OT05FKQo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgZHdjMl9oY2RfcXVldWVfdHJhbnNh Y3Rpb25zKGhzb3RnLCB0cl90eXBlKTsKPiA+IC0gICAgICAgfQo+ID4gKyAgICAgICAvKiBUaGUg Y29udHJvbGxlciB3YXMgaWRsZSwgbGV0J3MgdHJ5IHF1ZXVlIG91ciBwb3N0cG9uZWQgd29yayAq Lwo+ID4gKyAgICAgICB0cl90eXBlID0gZHdjMl9oY2Rfc2VsZWN0X3RyYW5zYWN0aW9ucyhoc290 Zyk7Cj4gPiArICAgICAgIGlmICh0cl90eXBlICE9IERXQzJfVFJBTlNBQ1RJT05fTk9ORSkKPiA+ ICsgICAgICAgICAgICAgICBkd2MyX2hjZF9xdWV1ZV90cmFuc2FjdGlvbnMoaHNvdGcsIHRyX3R5 cGUpOwo+ID4KPiA+ICtvdXRfdW5sb2NrOgo+ID4gICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0 b3JlKCZoc290Zy0+bG9jaywgZmxhZ3MpOwo+ID4gIH0KPiA+Cj4gPiBAQCAtMTcyMiwxMCArMTcy Nyw2IEBAIGludCBkd2MyX2hjZF9xaF9hZGQoc3RydWN0IGR3YzJfaHNvdGcgKmhzb3RnLCBzdHJ1 Y3QgZHdjMl9xaCAqcWgpCj4gPgo+ID4gICAgICAgICAvKiBBZGQgdGhlIG5ldyBRSCB0byB0aGUg YXBwcm9wcmlhdGUgc2NoZWR1bGUgKi8KPiA+ICAgICAgICAgaWYgKGR3YzJfcWhfaXNfbm9uX3Bl cihxaCkpIHsKPiA+IC0gICAgICAgICAgICAgICAvKiBTY2hlZHVsZSByaWdodCBhd2F5ICovCj4g PiAtICAgICAgICAgICAgICAgcWgtPnN0YXJ0X2FjdGl2ZV9mcmFtZSA9IGhzb3RnLT5mcmFtZV9u dW1iZXI7Cj4gPiAtICAgICAgICAgICAgICAgcWgtPm5leHRfYWN0aXZlX2ZyYW1lID0gcWgtPnN0 YXJ0X2FjdGl2ZV9mcmFtZTsKPiAKPiBXaGVyZSBkbyB3ZSBzZXQgc3RhcnRfYWN0aXZlX2ZyYW1l IGFuZCBuZXh0X2FjdGl2ZV9mcmFtZSBpbiB0aGUKPiAid2FudF93YWl0IiBjYXNlIG5vdz8gIFNo b3VsZG4ndCB5b3UgYmUgZG9pbmcgdGhhdCBpbgo+ICJkd2MyX3dhaXRfdGltZXJfZm4oKSIgbm93 IHRoYXQgeW91J3ZlIHJlbW92ZWQgaXQgZnJvbSBoZXJlPyAgLi4ub3IgaXMKPiBpdCBqdXN0IG5v dCBpbXBvcnRhbnQgZm9yIG5vbi1wZXJpb2RpYyB0cmFuc2ZlcnMgKGluIHdoaWNoIGNhc2UgeW91 Cj4gcHJvYmFibHkgZG9uJ3QgbmVlZCB0byBhZGQgaXQgdG8gdGhlICJub3Qgd2FudF93YWl0IiBj YXNlIGJlbG93KT8KPiAKCkhtbSwgSSB0aG91Z2h0IHRoYXQgd2Ugd291bGQgYWRqdXN0IHFoLT5z dGFydF9hY3RpdmVfZnJhbWUgYW5kCnFoLT5uZXh0X2FjdGl2ZV9mcmFtZSBhcyBuZWVkZWQgd2hl biB3ZSBzY2hlZHVsZSBRSCBhZ2Fpbiwgc2ltaWxhcmx5IHRvCnRoZSBpbml0aWFsIHRyYW5zZmVy IHJlcXVlc3QgZm9yIGEgZ2l2ZW4gVVJCLiBCdXQgSSBkbyBub3QgaGF2ZSBzdHJvbmcKb3Bpbmlv biBzbyBJJ2xsIHNpbXBseSBkcm9wIHRoaXMgY2hhbmdlLgoKVGhhbmtzIQo=