lkml.org 
[lkml]   [2021]   [Jul]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.12 226/700] nvmet-fc: do not check for invalid target port in nvmet_fc_handle_fcp_rqst()
    Date
    From: Hannes Reinecke <hare@suse.de>

    [ Upstream commit 2a4a910aa4f0acc428dc8d10227c42e14ed21d10 ]

    When parsing a request in nvmet_fc_handle_fcp_rqst() we should not
    check for invalid target ports; if we do the command is aborted
    from the fcp layer, causing the host to assume a transport error.
    Rather we should still forward this request to the nvmet layer, which
    will then correctly fail the command with an appropriate error status.

    Signed-off-by: Hannes Reinecke <hare@suse.de>
    Reviewed-by: James Smart <jsmart2021@gmail.com>
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/nvme/target/fc.c | 10 ++--------
    1 file changed, 2 insertions(+), 8 deletions(-)

    diff --git a/drivers/nvme/target/fc.c b/drivers/nvme/target/fc.c
    index d375745fc4ed..b81db5270018 100644
    --- a/drivers/nvme/target/fc.c
    +++ b/drivers/nvme/target/fc.c
    @@ -2494,13 +2494,6 @@ nvmet_fc_handle_fcp_rqst(struct nvmet_fc_tgtport *tgtport,
    u32 xfrlen = be32_to_cpu(cmdiu->data_len);
    int ret;

    - /*
    - * if there is no nvmet mapping to the targetport there
    - * shouldn't be requests. just terminate them.
    - */
    - if (!tgtport->pe)
    - goto transport_error;
    -
    /*
    * Fused commands are currently not supported in the linux
    * implementation.
    @@ -2528,7 +2521,8 @@ nvmet_fc_handle_fcp_rqst(struct nvmet_fc_tgtport *tgtport,

    fod->req.cmd = &fod->cmdiubuf.sqe;
    fod->req.cqe = &fod->rspiubuf.cqe;
    - fod->req.port = tgtport->pe->port;
    + if (tgtport->pe)
    + fod->req.port = tgtport->pe->port;

    /* clear any response payload */
    memset(&fod->rspiubuf, 0, sizeof(fod->rspiubuf));
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-07-12 09:35    [W:4.157 / U:0.076 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site