svn commit: r204321 - user/luigi/ipfw3-head/sys/netinet/ipfw
Luigi Rizzo
luigi at FreeBSD.org
Thu Feb 25 16:11:52 UTC 2010
Author: luigi
Date: Thu Feb 25 16:11:51 2010
New Revision: 204321
URL: http://svn.freebsd.org/changeset/base/204321
Log:
support for scanning an entire bucket. This is used when draining
idle queues and scheduler instances from dummynet.
Modified:
user/luigi/ipfw3-head/sys/netinet/ipfw/dn_heap.h
Modified: user/luigi/ipfw3-head/sys/netinet/ipfw/dn_heap.h
==============================================================================
--- user/luigi/ipfw3-head/sys/netinet/ipfw/dn_heap.h Thu Feb 25 16:00:52 2010 (r204320)
+++ user/luigi/ipfw3-head/sys/netinet/ipfw/dn_heap.h Thu Feb 25 16:11:51 2010 (r204321)
@@ -133,6 +133,11 @@ int heap_scan(struct dn_heap *, int (*)(
* removal of the object from the heap and the end of the
* scan, respectively.
*
+ * dn_ht_scan_bucket() is similar to dn_ht_scan(), except that it scans
+ * only the specific bucket of the table. The bucket is a in-out
+ * parameter and return a valid bucket number if the original
+ * is invalid.
+ *
* A combination of flags can be used to modify the operation
* of the dn_ht_find(), and of the callbacks:
*
@@ -163,6 +168,7 @@ void dn_ht_free(struct dn_ht *, int flag
void *dn_ht_find(struct dn_ht *, uintptr_t, int, void *);
int dn_ht_scan(struct dn_ht *, int (*)(void *, void *), void *);
+int dn_ht_scan_bucket(struct dn_ht *, int * , int (*)(void *, void *), void *);
int dn_ht_entries(struct dn_ht *);
enum { /* flags values.
More information about the svn-src-user
mailing list