diff options
author | andre <andre@FreeBSD.org> | 2013-08-25 10:57:09 +0000 |
---|---|---|
committer | andre <andre@FreeBSD.org> | 2013-08-25 10:57:09 +0000 |
commit | 6c0efad132654ea9bfc4e58975d1d58ce8d4b424 (patch) | |
tree | c06b97898de2cde2e64243afc1672aebf11ef915 /sys/compat/ndis/kern_ndis.c | |
parent | 8e41c705d027e43af7d37c3bc669b20ac317fd2b (diff) | |
download | FreeBSD-src-6c0efad132654ea9bfc4e58975d1d58ce8d4b424.zip FreeBSD-src-6c0efad132654ea9bfc4e58975d1d58ce8d4b424.tar.gz |
Give (*ext_free) an int return value allowing for very sophisticated
external mbuf buffer management capabilities in the future.
For now only EXT_FREE_OK is defined with current legacy behavior.
Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'sys/compat/ndis/kern_ndis.c')
-rw-r--r-- | sys/compat/ndis/kern_ndis.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/sys/compat/ndis/kern_ndis.c b/sys/compat/ndis/kern_ndis.c index 71b4b80..d0a05e1 100644 --- a/sys/compat/ndis/kern_ndis.c +++ b/sys/compat/ndis/kern_ndis.c @@ -482,16 +482,14 @@ ndis_return(dobj, arg) KeReleaseSpinLock(&block->nmb_returnlock, irql); } -void -ndis_return_packet(buf, arg) - void *buf; /* not used */ - void *arg; +int +ndis_return_packet(struct mbuf *m, void *buf, void *arg) { ndis_packet *p; ndis_miniport_block *block; if (arg == NULL) - return; + return (EXT_FREE_OK); p = arg; @@ -500,7 +498,7 @@ ndis_return_packet(buf, arg) /* Release packet when refcount hits zero, otherwise return. */ if (p->np_refcnt) - return; + return (EXT_FREE_OK); block = ((struct ndis_softc *)p->np_softc)->ndis_block; @@ -512,6 +510,8 @@ ndis_return_packet(buf, arg) IoQueueWorkItem(block->nmb_returnitem, (io_workitem_func)kernndis_functbl[7].ipt_wrap, WORKQUEUE_CRITICAL, block); + + return (EXT_FREE_OK); } void |