smb: server: only turn into SMBDIRECT_SOCKET_CONNECTED when negotiation is done
From SMBDIRECT_SOCKET_CREATED we now go via the following
stages:
1. SMBDIRECT_SOCKET_RDMA_CONNECT_NEEDED
This indicated rdma_accept needs to be called
2. SMBDIRECT_SOCKET_RDMA_CONNECT_RUNNING
This waits for RDMA_CM_EVENT_ESTABLISHED to
arrive
3. SMBDIRECT_SOCKET_NEGOTIATE_NEEDED
This waits for the negotiate request to
arrive
4. SMBDIRECT_SOCKET_NEGOTIATE_RUNNING
This indicates the negotiate request
arrived and needs to be processed
5. SMBDIRECT_SOCKET_CONNECTED
The connection is ready to use
This avoids the extra 'bool negotiation_requested'
and makes the steps more clear.
In future we may want to add trace points when
changing the states, which would be useful for
debugging.
Cc: Namjae Jeon <linkinjeon@kernel.org>
Cc: Steve French <smfrench@gmail.com>
Cc: Tom Talpey <tom@talpey.com>
Cc: linux-cifs@vger.kernel.org
Cc: samba-technical@lists.samba.org
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Acked-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>