All error handling path end to the error handling path, except this one.
Go to the error handling branch as well here, otherwise 'icreq' and
'icresp' will leak.
Fixes: 2837966ab2a8 ("nvme-tcp: control message handling for recvmsg()")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Keith Busch <kbusch@kernel.org>
                        nvme_tcp_queue_id(queue), ret);
                goto free_icresp;
        }
+       ret = -ENOTCONN;
        if (queue->ctrl->ctrl.opts->tls) {
                ctype = tls_get_record_type(queue->sock->sk,
                                            (struct cmsghdr *)cbuf);
                if (ctype != TLS_RECORD_TYPE_DATA) {
                        pr_err("queue %d: unhandled TLS record %d\n",
                               nvme_tcp_queue_id(queue), ctype);
-                       return -ENOTCONN;
+                       goto free_icresp;
                }
        }
        ret = -EINVAL;