Re: 5.14-rc failure to resume

From: Andy Shevchenko
Date: Sat Jul 24 2021 - 17:15:54 EST


On Sat, Jul 24, 2021 at 11:26 PM Jens Axboe <axboe@xxxxxxxxx> wrote:
>
> On 7/24/21 2:05 PM, Andy Shevchenko wrote:
> > On Sat, Jul 24, 2021 at 10:43 PM Jens Axboe <axboe@xxxxxxxxx> wrote:
> >> On 7/24/21 11:56 AM, Jens Axboe wrote:
> >>> On 7/24/21 9:57 AM, Jens Axboe wrote:
> >>>> Hi,
> >>>>
> >>>> I ran into this when doing the last bit of testing on pending changes
> >>>> for this release on the laptop. Outside of running testing on these
> >>>> changes, I always build and boot current -git and my changes on my
> >>>> laptop as well.
> >>>>
> >>>> 5.14-rc1 + changes works fine, current -git and changes fail to resume
> >>>> every single time. I just get a black screen. Tip of tree before merging
> >>>> fixes is:
> >>>>
> >>>> commit 704f4cba43d4ed31ef4beb422313f1263d87bc55 (origin/master, origin/HEAD, master)
> >>>> Merge: 05daae0fb033 0077a5008272
> >>>> Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
> >>>> Date: Fri Jul 23 11:30:12 2021 -0700
> >>>>
> >>>> Merge tag 'ceph-for-5.14-rc3' of git://github.com/ceph/ceph-client
> >>>>
> >>>> Since bisection takes forever on the laptop (gen7 x1 carbon), I
> >>>> opportunistically reverted some of the most recent git pulls:
> >>>>
> >>>> - ec6badfbe1cde0eb2bec4a0b8f6e738171156b5b (acpi changes)
> >>>> - 1d597682d3e669ec7021aa33d088ed3d136a5149 (driver-core changes)
> >>>> - 74738c556db6c7f780a8b98340937e55b72c896a (usb changes)
> >>>> - e7562a00c1f54116f5a058e7e3ddd500188f60b2 (sound changes)
> >>>> - 8baef6386baaefb776bdd09b5c7630cf057c51c6 (drm changes)
> >>>>
> >>>> as they could potentially be involved, but even with all of those
> >>>> reverted it still won't resume.
> >>>>
> >>>> Sending this out in case someone has already reported this and I just
> >>>> couldn't find it. If this is a new/unknown issues, I'll go ahead and
> >>>> bisect it.
> >>>
> >>> Ran a bisect, and it pinpoints:
> >>>
> >>> 71f6428332844f38c7cb10461d9f29e9c9b983a0 is the first bad commit
> >>> commit 71f6428332844f38c7cb10461d9f29e9c9b983a0
> >>> Author: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
> >>> Date: Mon Jul 12 21:21:21 2021 +0300
> >>>
> >>> ACPI: utils: Fix reference counting in for_each_acpi_dev_match()
> >>>
> >>> which seems odd, as it worked for me with the acpi changes reverted. It
> >>> could be that it _sometimes_ works with that commit, not sure. Adding
> >>> relevant folks to the CC.
> >>>
> >>> I'm going to revert this on top of current master and run with that
> >>> and see if it does 10 successful resumes.
> >>
> >> This does appear to be the culprit. With it reverted on top of current
> >> master (and with the block and io_uring changes pulled in too), the
> >> kernel survives many resumes without issue.
> >
> > If I read correctly it seems at one of the local rebase I might have
> > missed something.
> >
> > Can you replace sensor->adev with adev here
> >
> > https://elixir.bootlin.com/linux/v5.14-rc2/source/drivers/media/pci/intel/ipu3/cio2-bridge.c#L231
> >
> > and retest?
>
> Tried that, doesn't work unfortunately. Hung on first resume, just like
> current -git with that single line edit.

So, does it work along with the acpi_dev_put() converted to be

if (adev)
put_device(&adev->dev);

?

--
With Best Regards,
Andy Shevchenko