[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56539421.9050705@sandisk.com>
Date: Mon, 23 Nov 2015 14:33:05 -0800
From: Bart Van Assche <bart.vanassche@...disk.com>
To: Jason Gunthorpe <jgunthorpe@...idianresearch.com>
CC: Christoph Hellwig <hch@....de>,
"linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>,
"sagig@....mellanox.co.il" <sagig@....mellanox.co.il>,
"axboe@...com" <axboe@...com>,
"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 2/9] IB: add a proper completion queue abstraction
On 11/23/2015 02:18 PM, Jason Gunthorpe wrote:
> On Mon, Nov 23, 2015 at 01:54:05PM -0800, Bart Van Assche wrote:
> What I don't see is how SRP handles things when the
> sendq fills up, ie the case where __srp_get_tx_iu() == NULL. It looks
> like the driver starts to panic and generates printks. I can't tell if
> it can survive that, but it doesn't look very good..
Hello Jason,
From srp_cm_rep_handler():
target->scsi_host->can_queue
= min(ch->req_lim - SRP_TSK_MGMT_SQ_SIZE,
target->scsi_host->can_queue);
In other words, the SCSI core is told to ensure that the number of
outstanding SCSI commands is one less than the number of elements in the
ch->free_tx list. And since the SRP initiator serializes task management
requests it is guaranteed that __srp_get_tx_iu() won't fail due to
ch->free_tx being empty.
Bart.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists