Do not log SCSI command failures that are the result of a transport layer failure, a SCSI abort or SCSI reset. This patch is a slightly modified version of a patch posted by Sebastian Riemer in March 2013 (see also http://thread.gmane.org/gmane.linux.drivers.rdma/15020/). This patch avoids that a system becomes unresponsive during failover of a large number of LUNs when kernel messages are logged to a serial console. Signed-off-by: Sebastian Riemer <sebastian.riemer@xxxxxxxxxxxxxxxx> Signed-off-by: Bart Van Assche <bvanassche@xxxxxxx> Cc: Sagi Grimberg <sagig@xxxxxxxxxxxx> Cc: Roland Dreier <roland@xxxxxxxxxx> --- drivers/infiniband/ulp/srp/ib_srp.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c index fba52d2..b3ca4d6 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.c +++ b/drivers/infiniband/ulp/srp/ib_srp.c @@ -827,6 +827,7 @@ static void srp_finish_req(struct srp_target_port *target, if (scmnd) { srp_free_req(target, req, scmnd, 0); + scmnd->request->cmd_flags |= REQ_QUIET; scmnd->result = result; scmnd->scsi_done(scmnd); } @@ -1517,6 +1518,7 @@ static int srp_queuecommand(struct Scsi_Host *shost, struct scsi_cmnd *scmnd) result = srp_chkready(target->rport); if (unlikely(result)) { + scmnd->request->cmd_flags |= REQ_QUIET; scmnd->result = result; scmnd->scsi_done(scmnd); goto unlock_rport; @@ -2011,6 +2013,7 @@ static int srp_abort(struct scsi_cmnd *scmnd) else ret = FAILED; srp_free_req(target, req, scmnd, 0); + scmnd->request->cmd_flags |= REQ_QUIET; scmnd->result = DID_ABORT << 16; scmnd->scsi_done(scmnd); -- 1.8.4.5 -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html