[PATCH 3/5] spi: drop unused devres statistics allocation
From: Johan Hovold
Date: Thu Mar 12 2026 - 11:26:48 EST
Drop the now unused device managed per-cpu statistics allocation.
Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>
---
drivers/spi/spi.c | 27 ++++++++++++---------------
1 file changed, 12 insertions(+), 15 deletions(-)
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
index 53dee314d76a..bfc42b75549a 100644
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -96,25 +96,22 @@ static ssize_t driver_override_show(struct device *dev,
}
static DEVICE_ATTR_RW(driver_override);
-static struct spi_statistics __percpu *spi_alloc_pcpu_stats(struct device *dev)
+static struct spi_statistics __percpu *spi_alloc_pcpu_stats(void)
{
struct spi_statistics __percpu *pcpu_stats;
+ int cpu;
- if (dev)
- pcpu_stats = devm_alloc_percpu(dev, struct spi_statistics);
- else
- pcpu_stats = alloc_percpu_gfp(struct spi_statistics, GFP_KERNEL);
-
- if (pcpu_stats) {
- int cpu;
+ pcpu_stats = alloc_percpu_gfp(struct spi_statistics, GFP_KERNEL);
+ if (!pcpu_stats)
+ return NULL;
- for_each_possible_cpu(cpu) {
- struct spi_statistics *stat;
+ for_each_possible_cpu(cpu) {
+ struct spi_statistics *stat;
- stat = per_cpu_ptr(pcpu_stats, cpu);
- u64_stats_init(&stat->syncp);
- }
+ stat = per_cpu_ptr(pcpu_stats, cpu);
+ u64_stats_init(&stat->syncp);
}
+
return pcpu_stats;
}
@@ -574,7 +571,7 @@ struct spi_device *spi_alloc_device(struct spi_controller *ctlr)
return NULL;
}
- spi->pcpu_statistics = spi_alloc_pcpu_stats(NULL);
+ spi->pcpu_statistics = spi_alloc_pcpu_stats();
if (!spi->pcpu_statistics) {
kfree(spi);
spi_controller_put(ctlr);
@@ -3194,7 +3191,7 @@ struct spi_controller *__spi_alloc_controller(struct device *dev,
if (!ctlr)
return NULL;
- ctlr->pcpu_statistics = spi_alloc_pcpu_stats(NULL);
+ ctlr->pcpu_statistics = spi_alloc_pcpu_stats();
if (!ctlr->pcpu_statistics) {
kfree(ctlr);
return NULL;
--
2.52.0