Hi all,
Today's linux-next merge of the block tree got a conflict in:
drivers/nvme/target/tcp.c
between commit:
d920abd1e7c4 ("nvmet-tcp: Fix a possible UAF in queue intialization setup")
from Linus' tree and commit:
675b453e0241 ("nvmet-tcp: enable TLS handshake upcall")
from the block tree.
I fixed it up (I am not sure this is necessary - see below) and can
carry the fix as necessary. This is now fixed as far as linux-next is
concerned, but any non trivial conflicts should be mentioned to your
upstream maintainer when your tree is submitted for merging. You may
also want to consider cooperating with the maintainer of the conflicting
tree to minimise any particularly complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc drivers/nvme/target/tcp.c
index 197fc2ecb164,4336fe048e43..000000000000
--- a/drivers/nvme/target/tcp.c
+++ b/drivers/nvme/target/tcp.c
@@@ -910,8 -932,8 +933,10 @@@ static int nvmet_tcp_handle_icreq(struc
iov.iov_base = icresp;
iov.iov_len = sizeof(*icresp);
ret = kernel_sendmsg(queue->sock, &msg, &iov, 1, iov.iov_len);
-- if (ret < 0)
- goto free_crypto;
++ if (ret < 0) {
++ queue->state = NVMET_TCP_Q_FAILED;
+ return ret; /* queue removal will cleanup */
++ }
queue->state = NVMET_TCP_Q_LIVE;
nvmet_prepare_receive_pdu(queue);