Unverified Commit d501cc4c authored by David Jander's avatar David Jander Committed by Mark Brown
Browse files

spi: spi.c: Add missing __percpu annotations in users of spi_statistics



Fixes sparse warnings of this kind:
drivers/spi/spi.c:117:16: sparse:     expected struct spi_statistics *
drivers/spi/spi.c:117:16: sparse:     got struct spi_statistics [noderef]
 __percpu *[assigned] pcpu_stats

Reported-by: default avatarkernel test robot <lkp@intel.com>
Signed-off-by: default avatarDavid Jander <david@protonic.nl>
Link: https://lore.kernel.org/r/20220805084458.1602277-1-david@protonic.nl


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 69243df9
Loading
Loading
Loading
Loading
+7 −7
Original line number Original line Diff line number Diff line
@@ -95,7 +95,7 @@ static ssize_t driver_override_show(struct device *dev,
}
}
static DEVICE_ATTR_RW(driver_override);
static DEVICE_ATTR_RW(driver_override);


static struct spi_statistics *spi_alloc_pcpu_stats(struct device *dev)
static struct spi_statistics __percpu *spi_alloc_pcpu_stats(struct device *dev)
{
{
	struct spi_statistics __percpu *pcpu_stats;
	struct spi_statistics __percpu *pcpu_stats;


@@ -162,7 +162,7 @@ static struct device_attribute dev_attr_spi_device_##field = { \
}
}


#define SPI_STATISTICS_SHOW_NAME(name, file, field)			\
#define SPI_STATISTICS_SHOW_NAME(name, file, field)			\
static ssize_t spi_statistics_##name##_show(struct spi_statistics *stat, \
static ssize_t spi_statistics_##name##_show(struct spi_statistics __percpu *stat, \
					    char *buf)			\
					    char *buf)			\
{									\
{									\
	ssize_t len;							\
	ssize_t len;							\
@@ -309,7 +309,7 @@ static const struct attribute_group *spi_master_groups[] = {
	NULL,
	NULL,
};
};


static void spi_statistics_add_transfer_stats(struct spi_statistics *pcpu_stats,
static void spi_statistics_add_transfer_stats(struct spi_statistics __percpu *pcpu_stats,
					      struct spi_transfer *xfer,
					      struct spi_transfer *xfer,
					      struct spi_controller *ctlr)
					      struct spi_controller *ctlr)
{
{
@@ -1275,8 +1275,8 @@ static int spi_transfer_wait(struct spi_controller *ctlr,
			     struct spi_message *msg,
			     struct spi_message *msg,
			     struct spi_transfer *xfer)
			     struct spi_transfer *xfer)
{
{
	struct spi_statistics *statm = ctlr->pcpu_statistics;
	struct spi_statistics __percpu *statm = ctlr->pcpu_statistics;
	struct spi_statistics *stats = msg->spi->pcpu_statistics;
	struct spi_statistics __percpu *stats = msg->spi->pcpu_statistics;
	u32 speed_hz = xfer->speed_hz;
	u32 speed_hz = xfer->speed_hz;
	unsigned long long ms;
	unsigned long long ms;


@@ -1432,8 +1432,8 @@ static int spi_transfer_one_message(struct spi_controller *ctlr,
	struct spi_transfer *xfer;
	struct spi_transfer *xfer;
	bool keep_cs = false;
	bool keep_cs = false;
	int ret = 0;
	int ret = 0;
	struct spi_statistics *statm = ctlr->pcpu_statistics;
	struct spi_statistics __percpu *statm = ctlr->pcpu_statistics;
	struct spi_statistics *stats = msg->spi->pcpu_statistics;
	struct spi_statistics __percpu *stats = msg->spi->pcpu_statistics;


	spi_set_cs(msg->spi, true, false);
	spi_set_cs(msg->spi, true, false);