| From dbe717fde6fbd26493bd81e8a423c324903db244 Mon Sep 17 00:00:00 2001 |
| From: Tom Rix <trix@redhat.com> |
| Date: Sat, 27 Jun 2020 06:32:42 -0700 |
| Subject: [PATCH] scsi: scsi_transport_spi: Fix function pointer check |
| |
| commit 5aee52c44d9170591df65fafa1cd408acc1225ce upstream. |
| |
| clang static analysis flags several null function pointer problems. |
| |
| drivers/scsi/scsi_transport_spi.c:374:1: warning: Called function pointer is null (null dereference) [core.CallAndMessage] |
| spi_transport_max_attr(offset, "%d\n"); |
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| |
| Reviewing the store_spi_store_max macro |
| |
| if (i->f->set_##field) |
| return -EINVAL; |
| |
| should be |
| |
| if (!i->f->set_##field) |
| return -EINVAL; |
| |
| Link: https://lore.kernel.org/r/20200627133242.21618-1-trix@redhat.com |
| Reviewed-by: James Bottomley <jejb@linux.ibm.com> |
| Signed-off-by: Tom Rix <trix@redhat.com> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/drivers/scsi/scsi_transport_spi.c b/drivers/scsi/scsi_transport_spi.c |
| index f8661062ef95..f3d5b1bbd5aa 100644 |
| --- a/drivers/scsi/scsi_transport_spi.c |
| +++ b/drivers/scsi/scsi_transport_spi.c |
| @@ -339,7 +339,7 @@ store_spi_transport_##field(struct device *dev, \ |
| struct spi_transport_attrs *tp \ |
| = (struct spi_transport_attrs *)&starget->starget_data; \ |
| \ |
| - if (i->f->set_##field) \ |
| + if (!i->f->set_##field) \ |
| return -EINVAL; \ |
| val = simple_strtoul(buf, NULL, 0); \ |
| if (val > tp->max_##field) \ |
| -- |
| 2.27.0 |
| |