diff options
| author | Julian Elischer <julian@FreeBSD.org> | 2000-12-12 18:52:14 +0000 |
|---|---|---|
| committer | Julian Elischer <julian@FreeBSD.org> | 2000-12-12 18:52:14 +0000 |
| commit | 859a4d166c0fc97b248bf33c8745b7494934b0bf (patch) | |
| tree | 94d99d9e64eac6a506d1bd96cdf3063bafa75119 /sys/dev/lmc | |
| parent | 1ec5afb81e2be950824646f8a516e80d1c6b931c (diff) | |
Notes
Diffstat (limited to 'sys/dev/lmc')
| -rw-r--r-- | sys/dev/lmc/if_lmc.c | 9 |
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); } |
