Test Description
This test checks whether the configurable parameters for loaded HBA drivers match the best practices.
This test case issues a warning if:
One of the parameter values does not match the best practice.
HBA active port configuration doesn't fit the driver configuration.
This test case passes if:
All of the parameter values match the best practices.
How-to fix this test
Finding the driver configuration file
Ubuntu: /etc/modprobe.d/infinidat.conf
Redhat 5 or 6: /etc/modprobe.conf
Redhat 7 and later: /etc/modprobe.d/infinidat.conf
SLES: /etc/modprobe.d/infinidat.conf
Conflicts in driver configuration
In case you got this warning, there is another configuration file that conflicts with the driver recommended configuration.
WARNING: There are conflicts in driver configuration. The lpfc_lun_queue_depth parameter is configured to 126 while we need 128
Use the following steps to resolve this issue:
Check if
/etc/modprobe.conf
has this parameter configured for the bad value.Use `
grep -n lpfc_lun_queue_depth /etc/modprobe.d/*
` (whenlpfc_lun_queue_depth
specify the parameter shown on warning) to find the conflict files.Make sure that no other application needs this configuration, and remove the conflict parameters setting.
- Rerun the test.
Automatic fix
The automatic fix performs the following steps:
- Writes the recommended options to the
configuration file
- The automatic fix requires a reboot if the fiber channel driver cannot be reloaded.
Manual fix
To make the driver parameters persistent across module loads and reboots:
- Create or modify if exist the
configuration file
, using the Options command. - Reload the driver.
ramdisk
the image.
Example: the following sets the verbose flag.
options lpfc lpfc_log_verbose=0xffff
If the same option is specified both in the configuration file
and on the modprobe
command line, the
option setting in the command line takes precedence.
Below are the recommended values that are applied:
Emulex
Driver name: lpfc
Parameter | Recommended | Default | Min | Max | Description |
---|---|---|---|---|---|
lpfc_hba_queue_depth | 4096 | 4096 | 32 | 8192 | The maximum number of FCP commands that can queue to an Emulex adapter |
lpfc_lun_queue_depth | 128 | 30 | 1 | 128 | The default maximum commands sent to a single logical unit (disk) |
lpfc_devloss_tmo | 5 | 30 | 0 | 255 | Seconds to hold I/O error if device disappears |
lpfc_log_verbose | 0xff | 0 | 0 | 0xffff | Extra activity logging (bit mask) |
QLogic
Driver name: qla2xxx
Parameter | Recommended | Default | Min | Max | Description |
---|---|---|---|---|---|
ql2xenablemsix | 0 | 1 | 0 | 2 | Option to enable/disable MSI/MSI-X interrupt scheme. This recommended value disables MSI/MSI-X interrupt scheme |
ql2xmaxqdepth | 128 | 32 or 64 | 0 | N/A | Maximum queue depth to set for each LUN |
ql2xextended_error_logging | 507510784 | 0 | 0 | 0x7fffffff | Option to enable extended extra logging (bitmask) The recommended value is the preferred value for capturing essential debug information |
Brocade
Driver name: bfa
Parameter | Recommended | Default | Min | Max | Description |
---|---|---|---|---|---|
bfa_lun_queue_depth | 128 | 32 | 1 | N/A | LUN queue depth |
rport_del_timeout | 5 | 90 | 1 | N/A | Rport delete timeout (seconds) |
msix_disable_cb | 1 | 0 | 0 | 1 | Disable Message Signaled Interrupts |
msix_disable_ct | 1 | 0 | 0 | 1 | Disable Message Signaled Interrupts |
Cisco
Driver name: fnic
Parameter | Recommended | Default | Min | Max | Description |
---|---|---|---|---|---|
fnic_max_qdepth | 128 | 32 | 1 | N/A | Queue depth to report for each LUN |
More Information
List of recommended HBA drivers
Applies To
- Red Hat / CentOS / Oracle Linux
- Ubuntu
- SLES
Last edited: 2021-11-17 16:54:53 UTC
Comments