diff options
Diffstat (limited to 'drivers/scsi/esas2r/esas2r_flash.c')
-rw-r--r-- | drivers/scsi/esas2r/esas2r_flash.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/scsi/esas2r/esas2r_flash.c b/drivers/scsi/esas2r/esas2r_flash.c index 8582929b1fef..2ec3c23275b8 100644 --- a/drivers/scsi/esas2r/esas2r_flash.c +++ b/drivers/scsi/esas2r/esas2r_flash.c | |||
@@ -860,8 +860,13 @@ bool esas2r_process_fs_ioctl(struct esas2r_adapter *a, | |||
860 | return false; | 860 | return false; |
861 | } | 861 | } |
862 | 862 | ||
863 | if (fsc->command >= cmdcnt) { | ||
864 | fs->status = ATTO_STS_INV_FUNC; | ||
865 | return false; | ||
866 | } | ||
867 | |||
863 | func = cmd_to_fls_func[fsc->command]; | 868 | func = cmd_to_fls_func[fsc->command]; |
864 | if (fsc->command >= cmdcnt || func == 0xFF) { | 869 | if (func == 0xFF) { |
865 | fs->status = ATTO_STS_INV_FUNC; | 870 | fs->status = ATTO_STS_INV_FUNC; |
866 | return false; | 871 | return false; |
867 | } | 872 | } |
@@ -1355,7 +1360,7 @@ void esas2r_nvram_set_defaults(struct esas2r_adapter *a) | |||
1355 | u32 time = jiffies_to_msecs(jiffies); | 1360 | u32 time = jiffies_to_msecs(jiffies); |
1356 | 1361 | ||
1357 | esas2r_lock_clear_flags(&a->flags, AF_NVR_VALID); | 1362 | esas2r_lock_clear_flags(&a->flags, AF_NVR_VALID); |
1358 | memcpy(n, &default_sas_nvram, sizeof(struct esas2r_sas_nvram)); | 1363 | *n = default_sas_nvram; |
1359 | n->sas_addr[3] |= 0x0F; | 1364 | n->sas_addr[3] |= 0x0F; |
1360 | n->sas_addr[4] = HIBYTE(LOWORD(time)); | 1365 | n->sas_addr[4] = HIBYTE(LOWORD(time)); |
1361 | n->sas_addr[5] = LOBYTE(LOWORD(time)); | 1366 | n->sas_addr[5] = LOBYTE(LOWORD(time)); |
@@ -1373,7 +1378,7 @@ void esas2r_nvram_get_defaults(struct esas2r_adapter *a, | |||
1373 | * address out first. | 1378 | * address out first. |
1374 | */ | 1379 | */ |
1375 | memcpy(&sas_addr[0], a->nvram->sas_addr, 8); | 1380 | memcpy(&sas_addr[0], a->nvram->sas_addr, 8); |
1376 | memcpy(nvram, &default_sas_nvram, sizeof(struct esas2r_sas_nvram)); | 1381 | *nvram = default_sas_nvram; |
1377 | memcpy(&nvram->sas_addr[0], &sas_addr[0], 8); | 1382 | memcpy(&nvram->sas_addr[0], &sas_addr[0], 8); |
1378 | } | 1383 | } |
1379 | 1384 | ||