Commit b426df15 authored by Shivasharan S's avatar Shivasharan S Committed by Thadeu Lima de Souza Cascardo

scsi: megaraid_sas: Check valid aen class range to avoid kernel panic

BugLink: http://bugs.launchpad.net/bugs/1721477

commit 91b3d9f0 upstream.
Signed-off-by: default avatarKashyap Desai <kashyap.desai@broadcom.com>
Signed-off-by: default avatarShivasharan S <shivasharan.srikanteshwara@broadcom.com>
Reviewed-by: default avatarHannes Reinecke <hare@suse.com>
Reviewed-by: default avatarTomas Henzl <thenzl@redhat.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarStefan Bader <stefan.bader@canonical.com>
Signed-off-by: default avatarThadeu Lima de Souza Cascardo <cascardo@canonical.com>
parent 286a942d
...@@ -5433,6 +5433,14 @@ megasas_register_aen(struct megasas_instance *instance, u32 seq_num, ...@@ -5433,6 +5433,14 @@ megasas_register_aen(struct megasas_instance *instance, u32 seq_num,
prev_aen.word = prev_aen.word =
le32_to_cpu(instance->aen_cmd->frame->dcmd.mbox.w[1]); le32_to_cpu(instance->aen_cmd->frame->dcmd.mbox.w[1]);
if ((curr_aen.members.class < MFI_EVT_CLASS_DEBUG) ||
(curr_aen.members.class > MFI_EVT_CLASS_DEAD)) {
dev_info(&instance->pdev->dev,
"%s %d out of range class %d send by application\n",
__func__, __LINE__, curr_aen.members.class);
return 0;
}
/* /*
* A class whose enum value is smaller is inclusive of all * A class whose enum value is smaller is inclusive of all
* higher values. If a PROGRESS (= -1) was previously * higher values. If a PROGRESS (= -1) was previously
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment