scsi: megaraid_sas: Add module parameter for FW Async event logging
Add module parameter to control logging levels of async event notifications from firmware that get logged to system log. Also, allow changing the value from sysfs after driver load. Signed-off-by: Shivasharan S <shivasharan.srikanteshwara@broadcom.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
1175b88452
commit
d956a116c9
@ -117,6 +117,10 @@ MODULE_PARM_DESC(perf_mode, "Performance mode (only for Aero adapters), options:
|
||||
"default mode is 'balanced'"
|
||||
);
|
||||
|
||||
int event_log_level = MFI_EVT_CLASS_CRITICAL;
|
||||
module_param(event_log_level, int, 0644);
|
||||
MODULE_PARM_DESC(event_log_level, "Asynchronous event logging level- range is: -2(CLASS_DEBUG) to 4(CLASS_DEAD), Default: 2(CLASS_CRITICAL)");
|
||||
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_VERSION(MEGASAS_VERSION);
|
||||
MODULE_AUTHOR("megaraidlinux.pdl@broadcom.com");
|
||||
@ -416,7 +420,13 @@ megasas_decode_evt(struct megasas_instance *instance)
|
||||
union megasas_evt_class_locale class_locale;
|
||||
class_locale.word = le32_to_cpu(evt_detail->cl.word);
|
||||
|
||||
if (class_locale.members.class >= MFI_EVT_CLASS_CRITICAL)
|
||||
if ((event_log_level < MFI_EVT_CLASS_DEBUG) ||
|
||||
(event_log_level > MFI_EVT_CLASS_DEAD)) {
|
||||
printk(KERN_WARNING "megaraid_sas: provided event log level is out of range, setting it to default 2(CLASS_CRITICAL), permissible range is: -2 to 4\n");
|
||||
event_log_level = MFI_EVT_CLASS_CRITICAL;
|
||||
}
|
||||
|
||||
if (class_locale.members.class >= event_log_level)
|
||||
dev_info(&instance->pdev->dev, "%d (%s/0x%04x/%s) - %s\n",
|
||||
le32_to_cpu(evt_detail->seq_num),
|
||||
format_timestamp(le32_to_cpu(evt_detail->time_stamp)),
|
||||
@ -8762,6 +8772,12 @@ static int __init megasas_init(void)
|
||||
goto err_pcidrv;
|
||||
}
|
||||
|
||||
if ((event_log_level < MFI_EVT_CLASS_DEBUG) ||
|
||||
(event_log_level > MFI_EVT_CLASS_DEAD)) {
|
||||
printk(KERN_WARNING "megarid_sas: provided event log level is out of range, setting it to default 2(CLASS_CRITICAL), permissible range is: -2 to 4\n");
|
||||
event_log_level = MFI_EVT_CLASS_CRITICAL;
|
||||
}
|
||||
|
||||
rval = driver_create_file(&megasas_pci_driver.driver,
|
||||
&driver_attr_version);
|
||||
if (rval)
|
||||
|
Loading…
Reference in New Issue
Block a user