android_kernel_lge_bullhead/drivers/scsi/mpt2sas
Andrey Grodzovsky 0ae497609a mpt2sas: Fix secure erase premature termination
Problem:
This is a work around for a bug with LSI Fusion MPT SAS2 when
pefroming secure erase. Due to the very long time the operation
takes commands issued during the erase will time out and will trigger
execution of abort hook. Even though the abort hook is called for
the specific command which timed out this leads to entire device halt
(scsi_state terminated) and premature termination of the secured erase.

Fix:
Set device state to busy while erase in progress to reject any incoming
commands until the erase is done. The device is blocked any way during
this time and cannot execute any other command.
More data and logs can be found here -
https://drive.google.com/file/d/0B9ocOHYHbbS1Q3VMdkkzeWFkTjg/view

P.S
This is a backport from the same fix for mpt3sas driver intended
for pre-4.4 stable trees.

Signed-off-by: Andrey Grodzovsky <andrey2805@gmail.com>
Cc: Sreekanth Reddy <Sreekanth.Reddy@broadcom.com>
Cc: Hannes Reinecke <hare@suse.de>
Cc: PDL-MPT-FUSIONLINUX <MPT-FusionLinux.pdl@broadcom.com>
Cc: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Willy Tarreau <w@1wt.eu>
2017-02-10 11:03:20 +01:00
..
mpi [SCSI] mpt2sas : MPI 2.0 Rev V(2.0.14) specification 2012-08-24 13:10:26 +04:00
Kconfig [SCSI] mpt2sas: 2012 source code copyright 2012-08-24 13:10:25 +04:00
Makefile
mpt2sas_base.c SCSI: mpt2sas: Fix for issue Missing delay not getting set during system bootup 2013-07-25 14:07:31 -07:00
mpt2sas_base.h SCSI: mpt2sas: Fix for issue Missing delay not getting set during system bootup 2013-07-25 14:07:31 -07:00
mpt2sas_config.c [SCSI] mpt2sas: Provide sysfs attribute to report Backup Rail Monitor Status 2012-08-24 13:10:25 +04:00
mpt2sas_ctl.c mpt2sas: don't wank with fasync on ->release() 2013-04-29 15:41:45 -04:00
mpt2sas_ctl.h [SCSI] mpt2sas: 2012 source code copyright 2012-08-24 13:10:25 +04:00
mpt2sas_debug.h [SCSI] mpt2sas: 2012 source code copyright 2012-08-24 13:10:25 +04:00
mpt2sas_scsih.c mpt2sas: Fix secure erase premature termination 2017-02-10 11:03:20 +01:00
mpt2sas_transport.c block: Remove some unnecessary bi_vcnt usage 2013-03-23 14:15:31 -07:00