From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kalderon, Michal" Subject: Re: SQ overflow seen running isert traffic with high block sizes Date: Fri, 19 Jan 2018 19:33:22 +0000 Message-ID: References: <210f538f-8c98-f480-64fc-f2124ed6d01b@grimberg.me> <1499970579.7987.8.camel@haakon3.daterainc.com> <20171006224025.GA23364@ssaleem-MOBL4.amr.corp.intel.com> <1515992195.24576.156.camel@haakon3.daterainc.com> <20180115152236.GA15484@ssaleem-MOBL4.amr.corp.intel.com>,<1516269522.24576.274.camel@haakon3.daterainc.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <1516269522.24576.274.camel@haakon3.daterainc.com> Content-Language: en-US Sender: target-devel-owner@vger.kernel.org To: "Nicholas A. Bellinger" , Shiraz Saleem Cc: "Amrani, Ram" , Sagi Grimberg , "linux-rdma@vger.kernel.org" , "Elior, Ariel" , target-devel , Potnuri Bharat Teja , "Radzi, Amit" , "Galon, Yoav" List-Id: linux-rdma@vger.kernel.org ________________________________________ From: Nicholas A. Bellinger Sent: Thursday, January 18, 2018 11:58 AM > Hi Shiraz, Michal & Co, Hi Nicholas,=20 > Thanks for the feedback. Comments below. > A couple of thoughts. > First, would it be helpful to limit maximum payload size per I/O for > consumers based on number of iser-target sq hw sges..? I don't think you need to limit the maximum payload, but instead=20 initialize the max_wr to be based on the number of supported SGEs Instead of what is there today: #define ISERT_QP_MAX_REQ_DTOS (ISCSI_DEF_XMIT_CMDS_MAX + \ ISERT_MAX_TX_MISC_PDUS + \ ISERT_MAX_RX_MISC_PDUS) Add the maximum number of WQEs per command,=20 The calculation of number of WQEs per command needs to be something like "MAX_TRANSFER_SIZE/(numSges*PAGE_SIZE)". For some devices like ours, breaking the IO into multiple WRs according to = supported number of SGEs doesn't necessarily means performance penalty. thanks, Michal