summaryrefslogtreecommitdiff
path: root/sys/dev/lmc
diff options
context:
space:
mode:
authorJulian Elischer <julian@FreeBSD.org>2000-12-12 18:52:14 +0000
committerJulian Elischer <julian@FreeBSD.org>2000-12-12 18:52:14 +0000
commit859a4d166c0fc97b248bf33c8745b7494934b0bf (patch)
tree94d99d9e64eac6a506d1bd96cdf3063bafa75119 /sys/dev/lmc
parent1ec5afb81e2be950824646f8a516e80d1c6b931c (diff)
Notes
Diffstat (limited to 'sys/dev/lmc')
-rw-r--r--sys/dev/lmc/if_lmc.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/dev/lmc/if_lmc.c b/sys/dev/lmc/if_lmc.c
index cf220f7b5615..3bec1fa8fa6e 100644
--- a/sys/dev/lmc/if_lmc.c
+++ b/sys/dev/lmc/if_lmc.c
@@ -184,7 +184,6 @@ static struct ng_type typestruct = {
NULL,
ng_lmc_connect,
ng_lmc_rcvdata,
- ng_lmc_rcvdata,
ng_lmc_disconnect,
ng_lmc_cmdlist
};
@@ -623,9 +622,11 @@ lmc_rx_intr(lmc_softc_t * const sc)
}
}
if (accept) {
+ int error;
+
ms->m_pkthdr.len = total_len;
ms->m_pkthdr.rcvif = NULL;
- ng_queue_data(sc->lmc_hook, ms, NULL);
+ NG_SEND_DATA_ONLY(error, sc->lmc_hook, ms);
}
ms = m0;
}
@@ -1396,7 +1397,7 @@ ng_lmc_rcvmsg(node_p node, struct ng_mesg *msg,
*/
static int
ng_lmc_rcvdata(hook_p hook, struct mbuf *m, meta_p meta,
- struct mbuf **ret_m, meta_p *ret_meta)
+ struct mbuf **ret_m, meta_p *ret_meta, struct ng_mesg **resp)
{
int s;
int error = 0;
@@ -1462,6 +1463,8 @@ ng_lmc_rmnode(node_p node)
static int
ng_lmc_connect(hook_p hook)
{
+ /* We are probably not at splnet.. force outward queueing */
+ hook->peer->flags |= HK_QUEUE;
/* be really amiable and just say "YUP that's OK by me! " */
return (0);
}