Data digest calculation iterates over command mapped iovec. However since commitbac04454efwe unmap the iovec before we handle the data digest, and since commit69b85e1f1dwe clear nr_mapped when we unmap the iov. Instead of open-coding the command iov traversal, simply call crypto_ahash_digest with the command sg that is already allocated (we already do that for the send path). Rename nvmet_tcp_send_ddgst to nvmet_tcp_calc_ddgst and call it from send and recv paths. Fixes:69b85e1f1d("nvmet-tcp: add an helper to free the cmd buffers") Fixes:bac04454ef("nvmet-tcp: fix kmap leak when data digest in use") Signed-off-by: Sagi Grimberg <sagi@grimberg.me> Signed-off-by: Christoph Hellwig <hch@lst.de>
45 KiB
45 KiB