diff options
author | Hannes Reinecke <hare@suse.de> | 2022-03-10 14:25:53 +0100 |
---|---|---|
committer | Hannes Reinecke <hare@suse.de> | 2022-03-10 14:25:53 +0100 |
commit | d2416ecdb6b03fc2e4aa40b20cdf919322713224 (patch) | |
tree | 9fb12466a57c89984a58700466b129546a1deed2 | |
parent | 921f6399790df513118d6c1aa829d4e9fab5131c (diff) | |
download | scsi-devel-tls-upcall.v4.tar.gz |
nvme-tcp: use hash_iov_iter() to calculate the data digesttls-upcall.v4
If data digest has been enabled we need to calculate the hash on
the received data. As recvmsg() has already filled out the iov_iter
we just need to call hash_iov_iter() to calculate the hash.
Signed-off-by: Hannes Reinecke <hare@suse.de>
-rw-r--r-- | drivers/nvme/host/tcp.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/nvme/host/tcp.c b/drivers/nvme/host/tcp.c index 19d8a74071da98..1ba03654011bfc 100644 --- a/drivers/nvme/host/tcp.c +++ b/drivers/nvme/host/tcp.c @@ -956,6 +956,9 @@ static int nvme_tcp_recvmsg_data(struct nvme_tcp_queue *queue) if (WARN_ON(queue->data_digest)) ret = -EOPNOTSUPP; + if (ret > 0 && queue->data_digest) + ret = hash_iov_iter(queue->rcv_hash, &req->iter); + if (ret <= 0) { dev_err(queue->ctrl->ctrl.device, "queue %d failed to receive request %#x data", |