Hi folks, I have started looking at implementing some of the SMB3.0 features. This is because, in order to do SMB Direct I need multi-connect. In reading the latest version of the spec ([MS-SMB2] dated July 5, 2012 and available from msdn.microsoft.com) I notice that each session should have a channel list, which is a list of objects containing a connection reference and a signing key. It also should have a channel sequence number. This means that I will need to change the struct cifs_ses to have a channel list rather than a struct TCP_Server_Info. In addition, multi-connect allows multiple connections to the same actual server, since it allows a session to use multiple TCP connection on a GbE or 10GbE link. So, it seems that I will need to introduce an explicit notion of a connection, which the code does not currently have. This will definitely be needed for SMB Direct, because the model is that you establish a connection to the server on TCP, negotiate a protocol and then establish a session and then send an FSCTL to discover the (common) set of interfaces the server has. After that, if you notice that the client and server have an RDMA-capable interface in common, you establish a connection via that interface, negotiate protocol and then create a session (session setup) but bind it to the existing session. Does anyone have any comments at this stage? This seems like a significant undertaking :-) -- Regards, Richard Sharpe (何以解憂?唯有杜康。--曹操) -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html