X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lnet%2Flnet%2Flo.c;h=31e2b667d09e187d66216a9004223614a77ea315;hb=e35b7751f49fb7044955e3fa65de5e1a6d638ca0;hp=679d7bb4a49799c1c4cb9839f5338a736aa04400;hpb=33984c012883a7c714429d2c612cf6dcda191974;p=fs%2Flustre-release.git diff --git a/lnet/lnet/lo.c b/lnet/lnet/lo.c index 679d7bb..31e2b66 100644 --- a/lnet/lnet/lo.c +++ b/lnet/lnet/lo.c @@ -15,17 +15,15 @@ * * 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 (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/ @@ -36,89 +34,60 @@ #include static int -lolnd_send (lnet_ni_t *ni, void *private, lnet_msg_t *lntmsg) +lolnd_send(struct lnet_ni *ni, void *private, struct lnet_msg *lntmsg) { - LASSERT (!lntmsg->msg_routing); - LASSERT (!lntmsg->msg_target_is_router); + LASSERT(!lntmsg->msg_routing); + LASSERT(!lntmsg->msg_target_is_router); - return lnet_parse(ni, &lntmsg->msg_hdr, ni->ni_nid, lntmsg, 0); + return lnet_parse(ni, &lntmsg->msg_hdr, ni->ni_nid, lntmsg, 0); } static 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) +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 != 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); - } + if (lntmsg) { /* not discarding */ + lnet_copy_kiov2kiov(niov, kiov, offset, + sendmsg->msg_niov, + sendmsg->msg_kiov, + sendmsg->msg_offset, mlen); - lnet_finalize(ni, lntmsg, 0); - } + lnet_finalize(lntmsg, 0); + } - lnet_finalize(ni, sendmsg, 0); - return 0; + lnet_finalize(sendmsg, 0); + return 0; } static int lolnd_instanced; static void -lolnd_shutdown(lnet_ni_t *ni) +lolnd_shutdown(struct lnet_ni *ni) { CDEBUG (D_NET, "shutdown\n"); - LASSERT (lolnd_instanced); + LASSERT(lolnd_instanced); - lolnd_instanced = 0; + lolnd_instanced = 0; } static int -lolnd_startup (lnet_ni_t *ni) +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 };