nvmet-fc: simplify sg list handling
The existing nvmet_fc sg list handling has 2 faults: a) the request between LLDD and transport has too large of an sg list (256 elements), which is normally 256k (64 elements). b) sglist handling doesn't optimize on the fact that each element is a page. This patch removes the static sg list in the request and uses the dynamic list already present in the nvmet_fc transport. It also simplies the handling of the sg list on multiple sequences to take advantage of the per-page divisions. Signed-off-by: James Smart <james.smart@broadcom.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:

committed by
Sagi Grimberg

parent
5533d42480
commit
48fa362b6c
@@ -624,7 +624,7 @@ struct nvmefc_tgt_fcp_req {
|
||||
u32 timeout;
|
||||
u32 transfer_length;
|
||||
struct fc_ba_rjt ba_rjt;
|
||||
struct scatterlist sg[NVME_FC_MAX_SEGMENTS];
|
||||
struct scatterlist *sg;
|
||||
int sg_cnt;
|
||||
void *rspaddr;
|
||||
dma_addr_t rspdma;
|
||||
|
Reference in New Issue
Block a user