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