-/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
- * vim:expandtab:shiftwidth=8:tabstop=8:
- *
+/*
* GPL HEADER START
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* You should have received a copy of the GNU General Public License
* version 2 along with this program; If not, see
- * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
+ * http://www.gnu.org/licenses/gpl-2.0.html
*
* GPL HEADER END
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved
+ * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
* Use is subject to license terms.
+ *
+ * Copyright (c) 2017, Intel Corporation.
*/
/*
* This file is part of Lustre, http://www.lustre.org/
- * Lustre is a trademark of Sun Microsystems, Inc.
*/
#define DEBUG_SUBSYSTEM S_LNET
#include <lnet/lib-lnet.h>
-int
-lolnd_send (lnet_ni_t *ni, void *private, lnet_msg_t *lntmsg)
+static int
+lolnd_send(struct lnet_ni *ni, void *private, struct lnet_msg *lntmsg)
{
- LASSERT (!lntmsg->msg_routing);
- LASSERT (!lntmsg->msg_target_is_router);
-
- return lnet_parse(ni, &lntmsg->msg_hdr, ni->ni_nid, lntmsg, 0);
+ LASSERT(!lntmsg->msg_routing);
+ LASSERT(!lntmsg->msg_target_is_router);
+
+ return lnet_parse(ni, &lntmsg->msg_hdr, &ni->ni_nid, lntmsg, 0);
}
-int
-lolnd_recv (lnet_ni_t *ni, void *private, lnet_msg_t *lntmsg,
- int delayed, unsigned int niov,
- struct iovec *iov, lnet_kiov_t *kiov,
- unsigned int offset, unsigned int mlen, unsigned int rlen)
+static int
+lolnd_recv(struct lnet_ni *ni, void *private, struct lnet_msg *lntmsg,
+ int delayed, unsigned int niov,
+ struct bio_vec *kiov,
+ unsigned int offset, unsigned int mlen, unsigned int rlen)
{
- lnet_msg_t *sendmsg = private;
+ struct lnet_msg *sendmsg = private;
+
+ if (lntmsg) { /* not discarding */
+ lnet_copy_kiov2kiov(niov, kiov, offset,
+ sendmsg->msg_niov,
+ sendmsg->msg_kiov,
+ sendmsg->msg_offset, mlen);
- if (lntmsg != NULL) { /* not discarding */
- if (sendmsg->msg_iov != NULL) {
- if (iov != NULL)
- lnet_copy_iov2iov(niov, iov, offset,
- sendmsg->msg_niov,
- sendmsg->msg_iov,
- sendmsg->msg_offset, mlen);
- else
- lnet_copy_iov2kiov(niov, kiov, offset,
- sendmsg->msg_niov,
- sendmsg->msg_iov,
- sendmsg->msg_offset, mlen);
- } else {
- if (iov != NULL)
- lnet_copy_kiov2iov(niov, iov, offset,
- sendmsg->msg_niov,
- sendmsg->msg_kiov,
- sendmsg->msg_offset, mlen);
- else
- lnet_copy_kiov2kiov(niov, kiov, offset,
- sendmsg->msg_niov,
- sendmsg->msg_kiov,
- sendmsg->msg_offset, mlen);
- }
+ lnet_finalize(lntmsg, 0);
+ }
- lnet_finalize(ni, lntmsg, 0);
- }
-
- lnet_finalize(ni, sendmsg, 0);
- return 0;
+ lnet_finalize(sendmsg, 0);
+ return 0;
}
static int lolnd_instanced;
-void
-lolnd_shutdown(lnet_ni_t *ni)
+static void
+lolnd_shutdown(struct lnet_ni *ni)
{
CDEBUG (D_NET, "shutdown\n");
- LASSERT (lolnd_instanced);
-
- lolnd_instanced = 0;
+ LASSERT(lolnd_instanced);
+
+ lolnd_instanced = 0;
}
-int
-lolnd_startup (lnet_ni_t *ni)
+static int
+lolnd_startup(struct lnet_ni *ni)
{
- LASSERT (ni->ni_lnd == &the_lolnd);
+ LASSERT (ni->ni_net->net_lnd == &the_lolnd);
LASSERT (!lolnd_instanced);
- lolnd_instanced = 1;
+ lolnd_instanced = 1;
return (0);
}
-lnd_t the_lolnd = {
- /* .lnd_list = */ {&the_lolnd.lnd_list, &the_lolnd.lnd_list},
- /* .lnd_refcount = */ 0,
- /* .lnd_type = */ LOLND,
- /* .lnd_startup = */ lolnd_startup,
- /* .lnd_shutdown = */ lolnd_shutdown,
- /* .lnt_ctl = */ NULL,
- /* .lnd_send = */ lolnd_send,
- /* .lnd_recv = */ lolnd_recv,
- /* .lnd_eager_recv = */ NULL,
- /* .lnd_notify = */ NULL,
-#ifdef __KERNEL__
- /* .lnd_accept = */ NULL
-#else
- /* .lnd_wait = */ NULL
-#endif
+const struct lnet_lnd the_lolnd = {
+ .lnd_type = LOLND,
+ .lnd_startup = lolnd_startup,
+ .lnd_shutdown = lolnd_shutdown,
+ .lnd_send = lolnd_send,
+ .lnd_recv = lolnd_recv
};