lkml.org 
[lkml]   [2021]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 165/244] nvme-pci: dont simple map sgl when sgls are disabled
    Date
    From: Niklas Cassel <niklas.cassel@wdc.com>

    [ Upstream commit e51183be1fa96dc6d3cd11b3c25a0f595807315e ]

    According to the module parameter description for sgl_threshold,
    a value of 0 means that SGLs are disabled.

    If SGLs are disabled, we should respect that, even for the case
    where the request is made up of a single physical segment.

    Fixes: 297910571f08 ("nvme-pci: optimize mapping single segment requests using SGLs")
    Signed-off-by: Niklas Cassel <niklas.cassel@wdc.com>
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/nvme/host/pci.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
    index 3bee3724e9fa..2cb2ead7615b 100644
    --- a/drivers/nvme/host/pci.c
    +++ b/drivers/nvme/host/pci.c
    @@ -838,7 +838,7 @@ static blk_status_t nvme_map_data(struct nvme_dev *dev, struct request *req,
    return nvme_setup_prp_simple(dev, req,
    &cmnd->rw, &bv);

    - if (iod->nvmeq->qid &&
    + if (iod->nvmeq->qid && sgl_threshold &&
    dev->ctrl.sgls & ((1 << 0) | (1 << 1)))
    return nvme_setup_sgl_simple(dev, req,
    &cmnd->rw, &bv);
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-05-12 17:10    [W:4.022 / U:0.760 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site