LU-10391 socklnd: add hello message version 4 KSOCK_PROTO_V4 uses a 'hello' message that contains lnet_hdr_nid16 with 16 byte addresses Test-Parameters: trivial Test-Parameters: serverversion=2.12 serverdistro=el7.9 testlist=runtests Test-Parameters: clientversion=2.12 testlist=runtests Signed-off-by: Mr NeilBrown <neilb@suse.de> Change-Id: I52a36739d3a84dc059537059a586ce3dab2b20f0 Reviewed-on: https://review.whamcloud.com/43611 Reviewed-by: James Simmons <jsimmons@infradead.org> Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com> Tested-by: jenkins <devops@whamcloud.com> Tested-by: Maloo <maloo@whamcloud.com> Reviewed-by: Oleg Drokin <green@whamcloud.com>
LU-10391 socklnd: Change ksock_hello_msg to struct lnet_nid 'struct ksock_hello_msg' now stores 'struct lnet_nid', but it is converted to 'struct ksock_hello_msg_nid4' - the old format - for transmit, which is converted back on receive. This opens the way for a new version of the hello protocol which will use 16byte addresses. Test-Parameters: trivial Test-Parameters: serverversion=2.12 serverdistro=el7.9 testlist=runtests Test-Parameters: clientversion=2.12 testlist=runtests Signed-off-by: Mr NeilBrown <neilb@suse.de> Change-Id: I22e86f9088f6001f203f24f93ef292fcf2a8e69f Reviewed-on: https://review.whamcloud.com/43610 Reviewed-by: James Simmons <jsimmons@infradead.org> Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com> Tested-by: jenkins <devops@whamcloud.com> Tested-by: Maloo <maloo@whamcloud.com> Reviewed-by: Oleg Drokin <green@whamcloud.com>
LU-10391 lnet: separate lnet_hdr in msg from that in lnd. The lnet_hdr stored in an lnet_msg has fields which are sometimes in le byte order and sometimes in host byte order. The various lnds need all these fields to be in le byte order for transmission or reception over the network. To support larger (IPv6) NIDs, we will need the lnet_hdr in lnet_msg to store these NIDs, but the lnd will need both 4byte-addr and 16-byte lnds depending on protocol negotiation. This patch separates out the two to make the conversion easier to follow. 'struct lnet_hdr' is now used within common lnet code, and is not stored in network buffers. lnd_send will convert from 'struct lnet_hdr' to whatever is required in the network buffer. When lnet_parse() is called, the network buffer will be converted to a 'struct lnet_hdr' first, and that will be passed to lnet_parse(). The common fields of 'struct lnet_hdr' are always in host byte order. The command specific fields (now in 'union lnet_cmd_hdr') have not been changed and are sometimes host-byte-order and sometimes l3-byte-order. The new 'struct lnet_hdr_nid4' is used in network buffers. It is opaque - there are no subfields to access. Very few places in the lnd code want to access fields anyway. New functions lnet_hdr_to_nid4() and lnet_hdr_from_nid4() can convert between the lnet_hdr_nid4 to the internal lnet_hdr. 'struct _lnet_hdr_nid4' is provided to access fields inside 'struct lnet_hdr_nid4' when that is really needed. It is used by the to/from functions and a couple of other places. Test-Parameters: trivial Test-Parameters: serverversion=2.12 serverdistro=el7.9 testlist=runtests Test-Parameters: clientversion=2.12 testlist=runtests Signed-off-by: Mr NeilBrown <neilb@suse.de> Change-Id: I55277a49538543376cf0404f749d3357a2950a7c Reviewed-on: https://review.whamcloud.com/43603 Tested-by: jenkins <devops@whamcloud.com> Tested-by: Maloo <maloo@whamcloud.com> Reviewed-by: James Simmons <jsimmons@infradead.org> Reviewed-by: Chris Horn <chris.horn@hpe.com> Reviewed-by: Oleg Drokin <green@whamcloud.com>
LU-10391 socklnd: prepare for new KSOCK_MSG type Various places in socklnd assume there are only two message type: KSOCK_MSG_NOOP and KSOCK_MSG_LNET. We will soon add another type to support a new lnet_hdr type with large addresses. So do some cleanup first: - get rid of ksock_lnet_msg - it doesn't add anything to lnet_hdr - separate out 'struct ksock_hdr'. We often want the size of this header, and instead request the offset of a field in ksock_msg. - introduce switch statements in a couple of places to handle the different types of ksock_msg. Test-Parameters: trivial Test-Parameters: serverversion=2.12 serverdistro=el7.9 testlist=runtests Test-Parameters: clientversion=2.12 testlist=runtests Signed-off-by: Mr NeilBrown <neilb@suse.de> Change-Id: Ibe484f76757c4100b8532cef659c3cc369b658ba Reviewed-on: https://review.whamcloud.com/43601 Reviewed-by: Chris Horn <chris.horn@hpe.com> Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com> Tested-by: jenkins <devops@whamcloud.com> Tested-by: Maloo <maloo@whamcloud.com> Reviewed-by: James Simmons <jsimmons@infradead.org> Reviewed-by: Oleg Drokin <green@whamcloud.com>
LU-14487 lnet: remove references to Sun Trademark. "lustre" is no longer a Trademark of Sun Microsystems. There is no need to acknowledge the trademark in every file, so just remove all these claims. Test-Parameters: trivial Signed-off-by: Mr NeilBrown <neilb@suse.de> Change-Id: If7e61a7583ca80f024638b6f04382898c75acc91 Reviewed-on: https://review.whamcloud.com/42138 Tested-by: jenkins <devops@whamcloud.com> Tested-by: Maloo <maloo@whamcloud.com> Reviewed-by: Andreas Dilger <adilger@whamcloud.com> Reviewed-by: James Simmons <jsimmons@infradead.org>
LU-12678 lnet: discard WIRE_ATTR This macro adds nothing of value, and make the code harder to read for new readers so it was remove for the Linux client. We still want to keep track of what data structures are transmitted over the wire and ensure the protocol does not get broken. Move the wire protocol structures to their own header files and add wire checking. Linux-commit: 3e60455d1953fcee6042c107a8d5657886aa9c58 Test-Parameters: trivial Change-Id: I4867e80bf8e8f0598d1920865d6f1b9ba920ce5b Signed-off-by: Mr NeilBrown <neilb@suse.de> Signed-off-by: James Simmons <jsimmons@infradead.org> Reviewed-on: https://review.whamcloud.com/37914 Tested-by: jenkins <devops@whamcloud.com> Tested-by: Maloo <maloo@whamcloud.com> Reviewed-by: Andreas Dilger <adilger@whamcloud.com> Reviewed-by: Oleg Drokin <green@whamcloud.com>
LU-6245 uapi: move libcfs/lnet UAPI header into own uapi directory Move all the libcfs/lnet headers shared between user land and kernel space to the new lnet uapi directory. Test-Parameters: trivial Change-Id: Id6142b0e890fd47d3318dc3c98e64f72b5df2594 Signed-off-by: James Simmons <uja.ornl@yahoo.com> Reviewed-on: https://review.whamcloud.com/28089 Tested-by: Jenkins Tested-by: Maloo <hpdd-maloo@intel.com> Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-6142 lnet: remove most of typedefs from LNet headers Remove the majority of typedefs from the LNet headers. Change them into structures instead. Currently only lnet_nid_t, lnet_pid_t, and lnet_kiov_t are left. Test-Parameters: trivial Change-Id: Ib083d305ab945bab8d78ac96d17015550c0f9486 Signed-off-by: James Simmons <uja.ornl@yahoo.com> Reviewed-on: https://review.whamcloud.com/20831 Reviewed-by: Olaf Weber <olaf@sgi.com> Tested-by: Jenkins Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com> Tested-by: Maloo <hpdd-maloo@intel.com> Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com> Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-6142 socklnd: change UAPI typedefs to proper structure The upstream kernel requires proper structures so convert all the UAPI typedefs in socklnd.h. Remove the inline function socklnd_init_msg. Its only used by the kernel code and functions are not allowed in UAPI headers. Change-Id: I4120c5abc4dda456289146452ed61e0162062cea Signed-off-by: James Simmons <uja.ornl@yahoo.com> Reviewed-on: https://review.whamcloud.com/18506 Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com> Tested-by: Jenkins Tested-by: Maloo <hpdd-maloo@intel.com> Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com> Reviewed-by: John L. Hammond <john.hammond@intel.com> Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-8648 all: remove all Sun license and URL references The link to the GPL license at Sun is no longer there. Also Sun Inc is gone so lets remove all references to it in our source code. Test-Parameters: trivial Change-Id: Ib47d07dcef49a1ef624d0d8a4a91b9731f486278 Signed-off-by: James Simmons <uja.ornl@yahoo.com> Reviewed-on: http://review.whamcloud.com/22800 Tested-by: Jenkins Tested-by: Maloo <hpdd-maloo@intel.com> Reviewed-by: Andreas Dilger <andreas.dilger@intel.com> Reviewed-by: John L. Hammond <john.hammond@intel.com> Reviewed-by: Frank Zago <fzago@cray.com>
LU-6142 lnet: replace white spaces with tabs for LNet core This work converts all the remaining white spaces left in the LNet layer to the proper tab format. Fixed all space prohibited warnings reported by checkpatch. Any other space issues reported by checkpatch are also addressed for the code that was retabbed. Test-Parameters: trivial Change-Id: I12589439c9532d1d3989deee00aa68c29f84db85 Signed-off-by: James Simmons <uja.ornl@yahoo.com> Reviewed-on: http://review.whamcloud.com/19975 Tested-by: Jenkins Tested-by: Maloo <hpdd-maloo@intel.com> Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com> Reviewed-by: Frank Zago <fzago@cray.com> Reviewed-by: Andreas Dilger <andreas.dilger@intel.com> Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-6245 lnet: remove kernel defines in userland headers Currently the lnet headers used for user land applications contain various kernel definations. This is due to the fact libcfs contains kernel wrappers for user land which will be going away. This patch sorted the header data so all kernel containing structures are moved out of headers that user land will use. Signed-off-by: James Simmons <uja.ornl@gmail.com> Change-Id: I3904cd692bf2debd3123cbf8ca98dfc518ce0a97 Reviewed-on: http://review.whamcloud.com/13792 Tested-by: Jenkins Tested-by: Maloo <hpdd-maloo@intel.com> Reviewed-by: John L. Hammond <john.hammond@intel.com> Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
LU-2675 build: remove WinNT "support" Remove the WinNT "support" code. It's not maintained or used. Signed-off-by: John L. Hammond <john.hammond@intel.com> Change-Id: I361bfce148a040db60d68d3c34a399415f2dd628 Reviewed-on: http://review.whamcloud.com/11385 Tested-by: Jenkins Tested-by: Maloo <hpdd-maloo@intel.com> Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com> Reviewed-by: Bob Glossman <bob.glossman@intel.com> Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-2335 lnet: remove unnecessary libcfs include libcfs_pack/unpack.h are only needed for WINNT. Only include them when necessary. Signed-off-by: Peng Tao <tao.peng@emc.com> Change-Id: Ibe6230d37534fd087c2afe6166d10259fd59c076 Reviewed-on: http://review.whamcloud.com/4647 Tested-by: Hudson Reviewed-by: Andreas Dilger <andreas.dilger@intel.com> Tested-by: Maloo <whamcloud.maloo@gmail.com> Reviewed-by: John Hammond <johnlockwoodhammond@gmail.com>
LU-1347 build: remove the vim/emacs modelines Delete all of the vim/emacs modelines. Add copyright information for a few files. Signed-off-by: Liang Zhen <liang@whamcloud.com> Change-Id: Ic22ce8d8cc7786ffdb19937eb9f93a2d49aa2581 Reviewed-on: http://review.whamcloud.com/2658 Tested-by: Hudson Reviewed-by: Andreas Dilger <adilger@whamcloud.com> Reviewed-by: Oleg Drokin <green@whamcloud.com>
Mass conversion of all copyright messages to Oracle.
Branch HEAD Socklnd protocol V3: . dedicated connection for emergency message (ZC-ACK) . keepalive ping b=14634 i=isaac i=maxim
b=16150 i=issac i=liang winnt lnet cleanup
b=16098 Add URL for GPLv2 license in copyright headers
b=16098 change CFS license headers to Sun headers