[SCSI] megaraid_sas: check return value for megasas_get_pd_list()
When megasas_get_pd_list() fails we cannot detect any drives, so we should be checking the return value accordingly. [jejb: checkpatch fix] Signed-off-by: Hannes Reinecke <hare@suse.de> Acked-by: Kashyap Desai <kashyap.desai@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
parent
2f8bdfa84a
commit
58968fc8fb
|
@ -3763,7 +3763,10 @@ static int megasas_init_fw(struct megasas_instance *instance)
|
|||
|
||||
memset(instance->pd_list, 0 ,
|
||||
(MEGASAS_MAX_PD * sizeof(struct megasas_pd_list)));
|
||||
megasas_get_pd_list(instance);
|
||||
if (megasas_get_pd_list(instance) < 0) {
|
||||
printk(KERN_ERR "megasas: failed to get PD list\n");
|
||||
goto fail_init_adapter;
|
||||
}
|
||||
|
||||
memset(instance->ld_ids, 0xff, MEGASAS_MAX_LD_IDS);
|
||||
if (megasas_ld_list_query(instance,
|
||||
|
@ -5592,7 +5595,7 @@ megasas_aen_polling(struct work_struct *work)
|
|||
|
||||
if (doscan) {
|
||||
printk(KERN_INFO "scanning ...\n");
|
||||
megasas_get_pd_list(instance);
|
||||
if (megasas_get_pd_list(instance) == 0) {
|
||||
for (i = 0; i < MEGASAS_MAX_PD_CHANNELS; i++) {
|
||||
for (j = 0; j < MEGASAS_MAX_DEV_PER_CHANNEL; j++) {
|
||||
pd_index = i*MEGASAS_MAX_DEV_PER_CHANNEL + j;
|
||||
|
@ -5612,6 +5615,7 @@ megasas_aen_polling(struct work_struct *work)
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (megasas_ld_list_query(instance,
|
||||
MR_LD_QUERY_TYPE_EXPOSED_TO_HOST))
|
||||
|
|
Loading…
Reference in New Issue