浏览代码

fc_transport: Selective return value from BSG timeout function

The return value from BSG timout function should be based on the state of the
BSG job. This helps block layer to take selective actions to clean up BSG job.

Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com>
Acked-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Giridhar Malavali 16 年之前
父节点
当前提交
47e7e89ed0
共有 1 个文件被更改,包括 4 次插入1 次删除
  1. 4 1
      drivers/scsi/scsi_transport_fc.c

+ 4 - 1
drivers/scsi/scsi_transport_fc.c

@@ -3480,7 +3480,10 @@ fc_bsg_job_timeout(struct request *req)
 	}
 	}
 
 
 	/* the blk_end_sync_io() doesn't check the error */
 	/* the blk_end_sync_io() doesn't check the error */
-	return BLK_EH_HANDLED;
+	if (done)
+		return BLK_EH_NOT_HANDLED;
+	else
+		return BLK_EH_HANDLED;
 }
 }
 
 
 static int
 static int