2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-23 20:53:53 +08:00

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>
This commit is contained in:
Dan Carpenter 2015-11-13 17:23:23 +03:00 committed by Martin K. Petersen
parent 15de0de29f
commit 78b7b80cf0

View File

@ -759,7 +759,7 @@ mvs_store_interrupt_coalescing(struct device *cdev,
struct device_attribute *attr, struct device_attribute *attr,
const char *buffer, size_t size) const char *buffer, size_t size)
{ {
int val = 0; unsigned int val = 0;
struct mvs_info *mvi = NULL; struct mvs_info *mvi = NULL;
struct Scsi_Host *shost = class_to_shost(cdev); struct Scsi_Host *shost = class_to_shost(cdev);
struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost); struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost);
@ -767,7 +767,7 @@ mvs_store_interrupt_coalescing(struct device *cdev,
if (buffer == NULL) if (buffer == NULL)
return size; return size;
if (sscanf(buffer, "%d", &val) != 1) if (sscanf(buffer, "%u", &val) != 1)
return -EINVAL; return -EINVAL;
if (val >= 0x10000) { if (val >= 0x10000) {