aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2015-11-13 09:23:23 -0500
committerMartin K. Petersen <martin.petersen@oracle.com>2015-11-13 15:44:40 -0500
commit78b7b80cf0abd5ea31d229300b11e9c3a97324ae (patch)
tree07042cfd1d6f36d2899e9ff83deb7db1d2cf291c
parent15de0de29f7ba5cce9699a8cc2344ca137beb25a (diff)
mvsas: don't allow negative timeouts
There is a static checker warning here because "val" is controlled by the user and we have a upper bound on it but allow negative numbers. "val" appears to be a timeout in usec so this bug probably means we have a longer timeout than we should. Let's fix this by changing "val" to unsigned. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Jack Wang <jinpu.wang@profitbricks.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-rw-r--r--drivers/scsi/mvsas/mv_init.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/mvsas/mv_init.c b/drivers/scsi/mvsas/mv_init.c
index 1960d956c671..b39fe6473a21 100644
--- a/drivers/scsi/mvsas/mv_init.c
+++ b/drivers/scsi/mvsas/mv_init.c
@@ -759,7 +759,7 @@ mvs_store_interrupt_coalescing(struct device *cdev,
759 struct device_attribute *attr, 759 struct device_attribute *attr,
760 const char *buffer, size_t size) 760 const char *buffer, size_t size)
761{ 761{
762 int val = 0; 762 unsigned int val = 0;
763 struct mvs_info *mvi = NULL; 763 struct mvs_info *mvi = NULL;
764 struct Scsi_Host *shost = class_to_shost(cdev); 764 struct Scsi_Host *shost = class_to_shost(cdev);
765 struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost); 765 struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost);
@@ -767,7 +767,7 @@ mvs_store_interrupt_coalescing(struct device *cdev,
767 if (buffer == NULL) 767 if (buffer == NULL)
768 return size; 768 return size;
769 769
770 if (sscanf(buffer, "%d", &val) != 1) 770 if (sscanf(buffer, "%u", &val) != 1)
771 return -EINVAL; 771 return -EINVAL;
772 772
773 if (val >= 0x10000) { 773 if (val >= 0x10000) {