From: Dan Williams Date: Wed, 7 Dec 2011 07:24:42 +0000 (-0800) Subject: libsas: prevent double completion of scmds from eh X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f2765368bd876fe4223d2f46a1ae124dbe3dd9f2;p=pandora-kernel.git libsas: prevent double completion of scmds from eh commit a3a142524aa4b1539a64a55087bf12ffa4b1f94e upstream. We invoke task->task_done() to free the task in the eh case, but at this point we are prepared for scsi_eh_flush_done_q() to finish off the scmd. Introduce sas_end_task() to capture the final response status from the lldd and free the task. Also take the opportunity to kill this warning. drivers/scsi/libsas/sas_scsi_host.c: In function ‘sas_end_task’: drivers/scsi/libsas/sas_scsi_host.c:102:3: warning: case value ‘2’ not in enumerated type ‘enum exec_status’ [-Wswitch] Signed-off-by: Dan Williams Signed-off-by: James Bottomley Signed-off-by: Ben Hutchings --- Reading git-diff-tree failed