From: Kashyap Desai <kashyap.desai@broadcom.com>
To: Max Gurtovoy <mgurtovoy@nvidia.com>, linux-rdma@vger.kernel.org
Cc: Selvin Xavier <selvin.xavier@broadcom.com>,
Andrew Gospodarek <andrew.gospodarek@broadcom.com>,
Jason Gunthorpe <jgg@nvidia.com>,
Sagi Grimberg <sagi@grimberg.me>
Subject: RE: [PATCH RFC] IB/iser: add task reference counter for tx commands
Date: Thu, 25 Aug 2022 17:37:52 +0530 [thread overview]
Message-ID: <fa6e74d32a82e748f33e1906a3327b57@mail.gmail.com> (raw)
In-Reply-To: <8288a63a-d708-4e41-78fb-e3ed7d6fd9c2@nvidia.com>
[-- Attachment #1: Type: text/plain, Size: 1872 bytes --]
>
> Hi Kashyap Desai,
>
> Unfortunately, there is a wider problem in iser that we do the local
> invalidation if any, after we complete the iscsi task.
> So the right solution is to do the logic we have in NVMe/RDMA that checks
> if
> remote invalidation happened and if not, it does local invalidation.
> And the task is released after getting the send_completion and
> local_invalidation/remote invalidation.
Hi Max ,
I noticed the same. Agree that this RFC is not close to actual solution.
Final solution require major lift in iSER instead of just adding refcount in
couple of places.
In case of NVME every ib_post_send is posted with IB_SEND_SIGNALED and
nvme_rdma_send_done does the better job of handling out of order TX and RX
completion.
nvme_rdma_end_request() can be called either nvme_rdma_process_nvme_rsp,
nvme_rdma_send_done OR nvme_rdma_inv_rkey_done.
Similar concept is what we need in iSER side as well. Right ? Currently iSER
stack is freeing scsi request only from iser_task_rsp context.
>
> There is some infrastructure work needed to be done there.
I would like to contribute if you want me to test, review and/or co develop
the changes.
>
> Sagi,
>
> Please remind me few things regarding the iSCSI bidir cmds.
>
> In case of bidir IO cmd, if we need to use a reg_mr for it - I see a
> potential
> problem there.
> Is this scenario possible ?
>
> I'm asking because if it is possible, so what happens in remote
> invalidation ?
> what key is invalidated ? the read_key or the write_key ?
> in ib_isert there is a priority to the read_key (is it by the spec ?).
> We don't consider this in the iser recv completion and the remote
> invalidation
> checker logic.
> If it's not possible we should re-design few components in the code and
> fix the
> issue that we do local_invalidation of cmd N during the send of cmd N + 1.
>
> Cheers,
> -Max.
>
[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]
next prev parent reply other threads:[~2022-08-25 12:07 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-24 12:42 [PATCH RFC] IB/iser: add task reference counter for tx commands Kashyap Desai
2022-08-24 23:59 ` Max Gurtovoy
2022-08-25 12:07 ` Kashyap Desai [this message]
2022-08-28 14:52 ` Sagi Grimberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=fa6e74d32a82e748f33e1906a3327b57@mail.gmail.com \
--to=kashyap.desai@broadcom.com \
--cc=andrew.gospodarek@broadcom.com \
--cc=jgg@nvidia.com \
--cc=linux-rdma@vger.kernel.org \
--cc=mgurtovoy@nvidia.com \
--cc=sagi@grimberg.me \
--cc=selvin.xavier@broadcom.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox