On 02/27/14 06:48, David Dillow wrote: > I don't see where the block level is printing messages about the failed > requests -- but maybe I'm missing it. I see scsi_done() -> > blk_complete_request() -> blk_done_softirq() -> scsi_softirq_done() -> > scsi_finish_command() -> scsi_io_completion() > > I'm not seeing where the errored block requests would be printed before > scsi_io_completion(), which is where we were talking about setting the > REQ_QUIET flag above. > > What messages are you talking about -- even better if you can point to > where they come from -- but mainly which ones; I'm happy to track them > down myself. It's been a while since I've done a deep dive on this code, > so my apologies if it should be obvious to me...
Hello Dave, I think the call chain is as follows: scsi_io_completion() -> scsi_end_request() -> blk_end_request() -> blk_end_bidi_request() -> blk_update_bidi_request() -> blk_update_request(). That last function prints an error message for failed requests if REQ_QUIET has not been set. So this means that it's possible to set the REQ_QUIET flag from the SCSI mid-layer before the block layer checks that flag. > I agree it is the most expedient approach to solve Sebastian's immediate > problem, but I'd rather the solution be generic to the SCSI mid-layer so > it will be useful for others beyond SRP. It would be great if this would be solved in a more generic way. But please keep in mind that this is not just Sebastian's problem - other users have reported this before. Bart. -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
