LSI Adapters using the megaraid_sas driver may hang during boot or an adapter reset

Solution In Progress - Updated -

Environment

  • Red Hat Enterprise Linux (RHEL) 5
  • Red Hat Enterprise Linux (RHEL) 6.0-6.5

Issue

  • In very limited cases, a system configured to boot through an LSI SAS adapter may hang on boot; it may also hang during an adapter reset command.
  • This latent bug, discovered during Red Hat partner testing on an LSI SAS 9285CV-8e adapter, can also occur on other cards using the megaraid_sas driver.

Resolution

  • Since the timing window for this bug is very small, rebooting the system should result in a successful boot.
  • In the case of a hang during an adapter reset command, module unload/load should resolve the issue.

  • The issue is fixed in a Red Hat Enterprise Linux 6.5 (RHEL6.5) kernel errata (kernel-2.6.32-431.17.1) due to ship in early May 2014.

  • The fix is also included RHEL6.4 errata http://rhn.redhat.com/errata/RHSA-2014-0432.html (kernel-2.6.32-358.39.1). However, this errata is only available to Premium RHEL Subscription customers and to Standard RHEL subscription customers with Extended Update Support (EUS) subscriptions.
  • Customers running RHEL6.4 with Standard RHEL subscriptions who do not have access to the EUS stream and who are not satisfied with the workaround of rebooting the system in the case of a boot failure or a module unload/load in the case of a failure during module reset MUST MOVE TO THE RHEL6.5 ERRATA CONTAINING THE FIX or to RHEL6.6 when that becomes available.

  • There are currently no plans to fix this in RHEL5 since it has never been reported there.

Root Cause

This bug which has been in the code for a long time is caused by the driver reading a hw state twice (the value is then stored in two different variables). The driver code expects the values to be the same and when it is not, the reset function may timeout. The fix reads the hw state just once (in a loop).

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.