All of lore.kernel.org
 help / color / mirror / Atom feed
From: Amit Pundir <amit.pundir@linaro.org>
To: Saravana Kannan <saravanak@google.com>
Cc: Russell King <linux@armlinux.org.uk>,
	Neil Armstrong <narmstrong@baylibre.com>,
	Geert Uytterhoeven <geert+renesas@glider.be>,
	Magnus Damm <magnus.damm@gmail.com>,
	Tony Lindgren <tony@atomide.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will@kernel.org>,
	Damien Le Moal <damien.lemoal@wdc.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Ulf Hansson <ulf.hansson@linaro.org>,
	Rob Herring <robh+dt@kernel.org>,
	Android Kernel Team <kernel-team@android.com>,
	linux-arm-kernel@lists.infradead.org,
	lkml <linux-kernel@vger.kernel.org>,
	linux-oxnas@groups.io, linux-renesas-soc@vger.kernel.org,
	linux-omap@vger.kernel.org, linux-riscv@lists.infradead.org,
	Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
	John Stultz <john.stultz@linaro.org>
Subject: Re: [PATCH v4 2/2] drivers: bus: Delete CONFIG_SIMPLE_PM_BUS
Date: Tue, 26 Oct 2021 23:19:50 +0530	[thread overview]
Message-ID: <CAMi1Hd1gR0nRqQ9CKopc=veQXjtaS-CUxz-j48KEs8pHC6Ni=w@mail.gmail.com> (raw)
In-Reply-To: <CAGETcx9U130Oq-umrvXME4JhEpO0Wadoki3kNxx=0-YvTR6PtQ@mail.gmail.com>

On Tue, 26 Oct 2021 at 06:00, Saravana Kannan <saravanak@google.com> wrote:
>
> On Fri, Oct 22, 2021 at 10:00 AM Amit Pundir <amit.pundir@linaro.org> wrote:
> >
> > On Fri, 22 Oct 2021 at 05:13, Saravana Kannan <saravanak@google.com> wrote:
> > >
> > > On Thu, Oct 21, 2021 at 4:21 AM Amit Pundir <amit.pundir@linaro.org> wrote:
> > > >
> > > > Hi Saravana,
> > > >
> > > > This patch broke v5.15-rc6 on RB5 (sm8250 | qcom/qrb5165-rb5.dts).
> > > > I can't boot past this point https://www.irccloud.com/pastebin/raw/Nv6ZwHmW.
> > >
> > > Amit top posting? How did that happen? :)
> > >
> > > The fact you are seeing this issue is super strange though. The driver
> > > literally does nothing other than allowing some sync_state() callbacks
> > > to happen. I also grepped for the occurence of "simple-bus" in
> > > arch/arm64/boot/dts/qcom/ and the only instance for 8250 is for the
> > > soc node.
> > >
> > > The only thing I can think of is that without my patch some
> > > sync_state() callbacks weren't getting called and maybe it was masking
> > > some other issue.
> > >
> > > Can you try to boot with this log (see log patch below) and see if the
> > > device hangs right after a sync_state() callback? Also, looking at the
> > > different sync_state() implementations in upstream, I'm guessing one
> > > of the devices isn't voting for interconnect bandwidth when it should
> > > have.
> > >
> > > Another thing you could do is boot without the simple-bus changes and
> > > then look for all instances of "state_synced" in /sys/devices and then
> > > see if any of them has the value "0" after boot up is complete.
> >
> > Turned out RB5 is not even reaching up to
> > device_links_flush_sync_list() and seem to be stuck somewhere in
> > device_links_driver_bound(). So I added more print logs to narrow down
> > to any specific lock state but those additional prints seem to have
> > added enough delay to unblock that particular driver (Serial:
> > 8250/16550 driver if I understood the logs correctly) and I eventually
> > booted to UI.
>
> Ugh... I think I know what's going on. It popped into my head over the weekend.
>
> Couple of ways to confirm my theory:
> 1. After it finishes booting in both cases, can you compare the output
> of the command below? I'm expecting to see a significant drop in the
> number of device links.
> ls -l /sys/class/devlink | wc -l
>

On a successful boot with debug prints:
rb5:/ $ ls -l /sys/class/devlink | wc -l
245

Booting with this SIMPLE_PM_BUS patch reverted:
rb5:/ $ ls -l /sys/class/devlink | wc -l
248

> 2. Can you try out this terrible hack patch (not final fix, no code
> reviews please) on top of Tot to see if it fixes your issue without
> having to add hacky logs?
>

No luck booting with the following hack patch either.

Regards,
Amit Pundir


> Thanks,
> Saravana
>
> --- a/drivers/bus/simple-pm-bus.c
> +++ b/drivers/bus/simple-pm-bus.c
> @@ -38,10 +38,12 @@ static int simple_pm_bus_probe(struct platform_device *pdev)
>          * a device that has a more specific driver.
>          */
>         if (match && match->data) {
> -               if (of_property_match_string(np, "compatible",
> match->compatible) == 0)
> +               if (of_property_match_string(np, "compatible",
> match->compatible) == 0) {
> +                       of_platform_populate(np, NULL, lookup, &pdev->dev);
>                         return 0;
> -               else
> +               } else {
>                         return -ENODEV;
> +               }
>         }

WARNING: multiple messages have this Message-ID (diff)
From: Amit Pundir <amit.pundir@linaro.org>
To: Saravana Kannan <saravanak@google.com>
Cc: Russell King <linux@armlinux.org.uk>,
	Neil Armstrong <narmstrong@baylibre.com>,
	 Geert Uytterhoeven <geert+renesas@glider.be>,
	Magnus Damm <magnus.damm@gmail.com>,
	 Tony Lindgren <tony@atomide.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	 Will Deacon <will@kernel.org>,
	Damien Le Moal <damien.lemoal@wdc.com>,
	 Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Ulf Hansson <ulf.hansson@linaro.org>,
	 Rob Herring <robh+dt@kernel.org>,
	Android Kernel Team <kernel-team@android.com>,
	linux-arm-kernel@lists.infradead.org,
	lkml <linux-kernel@vger.kernel.org>,
	 linux-oxnas@groups.io, linux-renesas-soc@vger.kernel.org,
	 linux-omap@vger.kernel.org, linux-riscv@lists.infradead.org,
	 Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
	John Stultz <john.stultz@linaro.org>
Subject: Re: [PATCH v4 2/2] drivers: bus: Delete CONFIG_SIMPLE_PM_BUS
Date: Tue, 26 Oct 2021 23:19:50 +0530	[thread overview]
Message-ID: <CAMi1Hd1gR0nRqQ9CKopc=veQXjtaS-CUxz-j48KEs8pHC6Ni=w@mail.gmail.com> (raw)
In-Reply-To: <CAGETcx9U130Oq-umrvXME4JhEpO0Wadoki3kNxx=0-YvTR6PtQ@mail.gmail.com>

On Tue, 26 Oct 2021 at 06:00, Saravana Kannan <saravanak@google.com> wrote:
>
> On Fri, Oct 22, 2021 at 10:00 AM Amit Pundir <amit.pundir@linaro.org> wrote:
> >
> > On Fri, 22 Oct 2021 at 05:13, Saravana Kannan <saravanak@google.com> wrote:
> > >
> > > On Thu, Oct 21, 2021 at 4:21 AM Amit Pundir <amit.pundir@linaro.org> wrote:
> > > >
> > > > Hi Saravana,
> > > >
> > > > This patch broke v5.15-rc6 on RB5 (sm8250 | qcom/qrb5165-rb5.dts).
> > > > I can't boot past this point https://www.irccloud.com/pastebin/raw/Nv6ZwHmW.
> > >
> > > Amit top posting? How did that happen? :)
> > >
> > > The fact you are seeing this issue is super strange though. The driver
> > > literally does nothing other than allowing some sync_state() callbacks
> > > to happen. I also grepped for the occurence of "simple-bus" in
> > > arch/arm64/boot/dts/qcom/ and the only instance for 8250 is for the
> > > soc node.
> > >
> > > The only thing I can think of is that without my patch some
> > > sync_state() callbacks weren't getting called and maybe it was masking
> > > some other issue.
> > >
> > > Can you try to boot with this log (see log patch below) and see if the
> > > device hangs right after a sync_state() callback? Also, looking at the
> > > different sync_state() implementations in upstream, I'm guessing one
> > > of the devices isn't voting for interconnect bandwidth when it should
> > > have.
> > >
> > > Another thing you could do is boot without the simple-bus changes and
> > > then look for all instances of "state_synced" in /sys/devices and then
> > > see if any of them has the value "0" after boot up is complete.
> >
> > Turned out RB5 is not even reaching up to
> > device_links_flush_sync_list() and seem to be stuck somewhere in
> > device_links_driver_bound(). So I added more print logs to narrow down
> > to any specific lock state but those additional prints seem to have
> > added enough delay to unblock that particular driver (Serial:
> > 8250/16550 driver if I understood the logs correctly) and I eventually
> > booted to UI.
>
> Ugh... I think I know what's going on. It popped into my head over the weekend.
>
> Couple of ways to confirm my theory:
> 1. After it finishes booting in both cases, can you compare the output
> of the command below? I'm expecting to see a significant drop in the
> number of device links.
> ls -l /sys/class/devlink | wc -l
>

On a successful boot with debug prints:
rb5:/ $ ls -l /sys/class/devlink | wc -l
245

Booting with this SIMPLE_PM_BUS patch reverted:
rb5:/ $ ls -l /sys/class/devlink | wc -l
248

> 2. Can you try out this terrible hack patch (not final fix, no code
> reviews please) on top of Tot to see if it fixes your issue without
> having to add hacky logs?
>

No luck booting with the following hack patch either.

Regards,
Amit Pundir


> Thanks,
> Saravana
>
> --- a/drivers/bus/simple-pm-bus.c
> +++ b/drivers/bus/simple-pm-bus.c
> @@ -38,10 +38,12 @@ static int simple_pm_bus_probe(struct platform_device *pdev)
>          * a device that has a more specific driver.
>          */
>         if (match && match->data) {
> -               if (of_property_match_string(np, "compatible",
> match->compatible) == 0)
> +               if (of_property_match_string(np, "compatible",
> match->compatible) == 0) {
> +                       of_platform_populate(np, NULL, lookup, &pdev->dev);
>                         return 0;
> -               else
> +               } else {
>                         return -ENODEV;
> +               }
>         }

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

WARNING: multiple messages have this Message-ID (diff)
From: Amit Pundir <amit.pundir@linaro.org>
To: Saravana Kannan <saravanak@google.com>
Cc: Russell King <linux@armlinux.org.uk>,
	Neil Armstrong <narmstrong@baylibre.com>,
	 Geert Uytterhoeven <geert+renesas@glider.be>,
	Magnus Damm <magnus.damm@gmail.com>,
	 Tony Lindgren <tony@atomide.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	 Will Deacon <will@kernel.org>,
	Damien Le Moal <damien.lemoal@wdc.com>,
	 Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Ulf Hansson <ulf.hansson@linaro.org>,
	 Rob Herring <robh+dt@kernel.org>,
	Android Kernel Team <kernel-team@android.com>,
	linux-arm-kernel@lists.infradead.org,
	lkml <linux-kernel@vger.kernel.org>,
	 linux-oxnas@groups.io, linux-renesas-soc@vger.kernel.org,
	 linux-omap@vger.kernel.org, linux-riscv@lists.infradead.org,
	 Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
	John Stultz <john.stultz@linaro.org>
Subject: Re: [PATCH v4 2/2] drivers: bus: Delete CONFIG_SIMPLE_PM_BUS
Date: Tue, 26 Oct 2021 23:19:50 +0530	[thread overview]
Message-ID: <CAMi1Hd1gR0nRqQ9CKopc=veQXjtaS-CUxz-j48KEs8pHC6Ni=w@mail.gmail.com> (raw)
In-Reply-To: <CAGETcx9U130Oq-umrvXME4JhEpO0Wadoki3kNxx=0-YvTR6PtQ@mail.gmail.com>

On Tue, 26 Oct 2021 at 06:00, Saravana Kannan <saravanak@google.com> wrote:
>
> On Fri, Oct 22, 2021 at 10:00 AM Amit Pundir <amit.pundir@linaro.org> wrote:
> >
> > On Fri, 22 Oct 2021 at 05:13, Saravana Kannan <saravanak@google.com> wrote:
> > >
> > > On Thu, Oct 21, 2021 at 4:21 AM Amit Pundir <amit.pundir@linaro.org> wrote:
> > > >
> > > > Hi Saravana,
> > > >
> > > > This patch broke v5.15-rc6 on RB5 (sm8250 | qcom/qrb5165-rb5.dts).
> > > > I can't boot past this point https://www.irccloud.com/pastebin/raw/Nv6ZwHmW.
> > >
> > > Amit top posting? How did that happen? :)
> > >
> > > The fact you are seeing this issue is super strange though. The driver
> > > literally does nothing other than allowing some sync_state() callbacks
> > > to happen. I also grepped for the occurence of "simple-bus" in
> > > arch/arm64/boot/dts/qcom/ and the only instance for 8250 is for the
> > > soc node.
> > >
> > > The only thing I can think of is that without my patch some
> > > sync_state() callbacks weren't getting called and maybe it was masking
> > > some other issue.
> > >
> > > Can you try to boot with this log (see log patch below) and see if the
> > > device hangs right after a sync_state() callback? Also, looking at the
> > > different sync_state() implementations in upstream, I'm guessing one
> > > of the devices isn't voting for interconnect bandwidth when it should
> > > have.
> > >
> > > Another thing you could do is boot without the simple-bus changes and
> > > then look for all instances of "state_synced" in /sys/devices and then
> > > see if any of them has the value "0" after boot up is complete.
> >
> > Turned out RB5 is not even reaching up to
> > device_links_flush_sync_list() and seem to be stuck somewhere in
> > device_links_driver_bound(). So I added more print logs to narrow down
> > to any specific lock state but those additional prints seem to have
> > added enough delay to unblock that particular driver (Serial:
> > 8250/16550 driver if I understood the logs correctly) and I eventually
> > booted to UI.
>
> Ugh... I think I know what's going on. It popped into my head over the weekend.
>
> Couple of ways to confirm my theory:
> 1. After it finishes booting in both cases, can you compare the output
> of the command below? I'm expecting to see a significant drop in the
> number of device links.
> ls -l /sys/class/devlink | wc -l
>

On a successful boot with debug prints:
rb5:/ $ ls -l /sys/class/devlink | wc -l
245

Booting with this SIMPLE_PM_BUS patch reverted:
rb5:/ $ ls -l /sys/class/devlink | wc -l
248

> 2. Can you try out this terrible hack patch (not final fix, no code
> reviews please) on top of Tot to see if it fixes your issue without
> having to add hacky logs?
>

No luck booting with the following hack patch either.

Regards,
Amit Pundir


> Thanks,
> Saravana
>
> --- a/drivers/bus/simple-pm-bus.c
> +++ b/drivers/bus/simple-pm-bus.c
> @@ -38,10 +38,12 @@ static int simple_pm_bus_probe(struct platform_device *pdev)
>          * a device that has a more specific driver.
>          */
>         if (match && match->data) {
> -               if (of_property_match_string(np, "compatible",
> match->compatible) == 0)
> +               if (of_property_match_string(np, "compatible",
> match->compatible) == 0) {
> +                       of_platform_populate(np, NULL, lookup, &pdev->dev);
>                         return 0;
> -               else
> +               } else {
>                         return -ENODEV;
> +               }
>         }

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2021-10-26 17:50 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-29  0:07 [PATCH v4 0/2] Fix simple-bus issues with fw_devlink Saravana Kannan
2021-09-29  0:07 ` Saravana Kannan
2021-09-29  0:07 ` Saravana Kannan
2021-09-29  0:07 ` [PATCH v4 1/2] drivers: bus: simple-pm-bus: Add support for probing simple bus only devices Saravana Kannan
2021-09-29  0:07   ` Saravana Kannan
2021-09-29  0:07   ` Saravana Kannan
2021-10-05 15:07   ` Geert Uytterhoeven
2021-10-05 15:07     ` Geert Uytterhoeven
2021-10-05 15:07     ` Geert Uytterhoeven
2021-11-10 12:16   ` Abel Vesa
2021-11-10 12:16     ` Abel Vesa
2021-11-10 12:16     ` Abel Vesa
2021-11-10 20:24     ` Saravana Kannan
2021-11-10 20:24       ` Saravana Kannan
2021-11-10 20:24       ` Saravana Kannan
2021-11-15 20:17       ` Saravana Kannan
2021-11-15 20:17         ` Saravana Kannan
2021-11-15 20:17         ` Saravana Kannan
2021-11-16  5:19         ` Tony Lindgren
2021-11-16  5:19           ` Tony Lindgren
2021-11-16  5:19           ` Tony Lindgren
2021-11-16 13:59         ` Abel Vesa
2021-11-16 13:59           ` Abel Vesa
2021-11-16 13:59           ` Abel Vesa
2021-11-16 15:11           ` Abel Vesa
2021-11-16 15:11             ` Abel Vesa
2021-11-16 15:11             ` Abel Vesa
2021-11-19 16:16             ` Abel Vesa
2021-11-19 16:16               ` Abel Vesa
2021-11-19 16:16               ` Abel Vesa
2021-11-24  1:07               ` Saravana Kannan
2021-11-24  1:07                 ` Saravana Kannan
2021-11-24  1:07                 ` Saravana Kannan
2022-02-01  3:18   ` Kevin Hilman
2022-02-01  3:18     ` Kevin Hilman
2022-02-01  3:18     ` Kevin Hilman
2022-02-01  5:30     ` Saravana Kannan
2022-02-01  5:30       ` Saravana Kannan
2022-02-01  5:30       ` Saravana Kannan
2022-02-01 18:36       ` Kevin Hilman
2022-02-01 18:36         ` Kevin Hilman
2022-02-01 18:36         ` Kevin Hilman
2022-02-02 19:58         ` Kevin Hilman
2022-02-02 19:58           ` Kevin Hilman
2022-02-02 19:58           ` Kevin Hilman
2021-09-29  0:07 ` [PATCH v4 2/2] drivers: bus: Delete CONFIG_SIMPLE_PM_BUS Saravana Kannan
2021-09-29  0:07   ` Saravana Kannan
2021-09-29  0:07   ` Saravana Kannan
2021-10-05 15:11   ` Geert Uytterhoeven
2021-10-05 15:11     ` Geert Uytterhoeven
2021-10-05 15:11     ` Geert Uytterhoeven
2021-10-21 11:21   ` Amit Pundir
2021-10-21 11:21     ` Amit Pundir
2021-10-21 11:21     ` Amit Pundir
2021-10-21 12:37     ` Tony Lindgren
2021-10-21 12:37       ` Tony Lindgren
2021-10-21 12:37       ` Tony Lindgren
2021-10-21 23:42     ` Saravana Kannan
2021-10-21 23:42       ` Saravana Kannan
2021-10-21 23:42       ` Saravana Kannan
2021-10-22 16:59       ` Amit Pundir
2021-10-22 16:59         ` Amit Pundir
2021-10-22 16:59         ` Amit Pundir
2021-10-26  0:30         ` Saravana Kannan
2021-10-26  0:30           ` Saravana Kannan
2021-10-26  0:30           ` Saravana Kannan
2021-10-26 17:49           ` Amit Pundir [this message]
2021-10-26 17:49             ` Amit Pundir
2021-10-26 17:49             ` Amit Pundir
2021-09-30  2:50 ` [PATCH v4 0/2] Fix simple-bus issues with fw_devlink Damien Le Moal
2021-09-30  2:50   ` Damien Le Moal
2021-09-30  2:50   ` Damien Le Moal
2021-10-06  5:29 ` Tony Lindgren
2021-10-06  5:29   ` Tony Lindgren
2021-10-06  5:29   ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAMi1Hd1gR0nRqQ9CKopc=veQXjtaS-CUxz-j48KEs8pHC6Ni=w@mail.gmail.com' \
    --to=amit.pundir@linaro.org \
    --cc=catalin.marinas@arm.com \
    --cc=damien.lemoal@wdc.com \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=geert+renesas@glider.be \
    --cc=gregkh@linuxfoundation.org \
    --cc=john.stultz@linaro.org \
    --cc=kernel-team@android.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-oxnas@groups.io \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=linux@armlinux.org.uk \
    --cc=magnus.damm@gmail.com \
    --cc=narmstrong@baylibre.com \
    --cc=robh+dt@kernel.org \
    --cc=saravanak@google.com \
    --cc=tony@atomide.com \
    --cc=ulf.hansson@linaro.org \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.