Messages in this thread | | | Date | Thu, 26 Mar 2020 16:23:50 +0200 | From | Andy Shevchenko <> | Subject | Re: [PATCH v3] driver core: Break infinite loop when deferred probe can't be satisfied |
| |
On Thu, Mar 26, 2020 at 01:45:50PM +0000, Grant Likely wrote: > On 26/03/2020 12:03, Andy Shevchenko wrote: > > On Thu, Mar 26, 2020 at 11:45:18AM +0200, Peter Ujfalusi wrote: > > > On 26/03/2020 10.39, Rafael J. Wysocki wrote: > > > > On Wed, Mar 25, 2020 at 11:09 PM Saravana Kannan <saravanak@google.com> wrote: > > > > > On Wed, Mar 25, 2020 at 5:51 AM Andy Shevchenko > > > > > <andriy.shevchenko@linux.intel.com> wrote: > > > > ... > > > > > > OK, so the situation right now is that commit 58b116bce136 has > > > > introduced a regression and so it needs to be fixed or reverted. The > > > > cases that were previously broken and were unbroken by that commit > > > > don't matter here, so you cannot argue that they would be "broken". > > > > > > commit 58b116bce136 is from 2014 and the whole ULPI support for dwc3 > > > came in a year later. > > > While I agree that 58b116bce136 fail to handle came a year later, but > > > technically it did not introduced a regression. > > > > > > The revert on the other hand is going to introduce a regression as > > > things were working fine since 2014. Not sure why the dwc3 issue got > > > this long to be noticed as the 58b116bce136 was already in kernel when > > > the ULPI support was added... > > > > I dare to say that is luck based on people's laziness to figure out the root > > cause. As I pointed out in email to Saravana the issue is not limited to USB > > case and, if my memory doesn't trick me out, I suffered from it approximately > > in ~2014-2015 with pin control tables. > > I've not been involved in this for a very long time, but from our past > conversations and the description that is given here I still feel that this > problem is a design bug on the dwc3 driver dependencies rather than a > failure with driver core. dwc3 is doing something rather convoluted and it > would be worth reevaluating how probe failures are unwound on that > particular driver stack.
I disagree. Have you chance to look into another example I gave to Saravana?
The unbalanced increment is fragile per se, because you can't guarantee that it will be no unsynchronization between probed successfully (unrelated!) and deferred drivers.
-- With Best Regards, Andy Shevchenko
| |