Re: [PATCH] spi: cadence-qspi: Fix runtime PM imbalance in probe
From: Ali Tariq
Date: Thu Dec 04 2025 - 06:21:45 EST
Thanks for the merge. Recently, there was a patch which removed the
redundant pm_runtime_mark_last_busy() call:
https://lore.kernel.org/linux-kernel/20251203181921.97171-1-akifejaz40@xxxxxxxxx/
The patch removes pm_runtime_mark_last_busy() from the probe function,
as pm_runtime_put_autosuspend() already handles this internally.
Best Regards,
Ali
On 12/3/25 1:50 AM, Andy Shevchenko wrote:
On Sun, Nov 30, 2025 at 09:12:51AM +0000, Ali Tariq wrote:
The probe function incorrectly calls pm_runtime_put_autosuspend()
twice in succession at the end of successful probe, dropping two
runtime PM references while only one was acquired earlier with
pm_runtime_get_sync(). This causes a usage count underflow:
cadence-qspi 13010000.spi: Runtime PM usage count underflow!
Remove the first redundant pm_runtime_put_autosuspend() call to
balance the reference count.
Tested on StarFive VisionFive 2 v1.2A board.
...
if (!(ddata && (ddata->quirks & CQSPI_DISABLE_RUNTIME_PM))) {
- pm_runtime_put_autosuspend(dev);
pm_runtime_mark_last_busy(dev);
This one — pm_runtime_mark_last_busy() — also may be removed as it's integrated
into the _put_auutosuspend().
pm_runtime_put_autosuspend(dev);
}