summaryrefslogtreecommitdiffstats
path: root/sys/sys/callout.h
diff options
context:
space:
mode:
authorgibbs <gibbs@FreeBSD.org>1997-09-21 22:09:24 +0000
committergibbs <gibbs@FreeBSD.org>1997-09-21 22:09:24 +0000
commitd9cbf6234075f423cb8f26077912985a28de1af8 (patch)
treec4a4352affb9bbb3ff5d0097209e6e8ee1b2cf7b /sys/sys/callout.h
parent045b17cf00de7ddf9b7ce771dbbfe3fd35b09eaa (diff)
downloadFreeBSD-src-d9cbf6234075f423cb8f26077912985a28de1af8.zip
FreeBSD-src-d9cbf6234075f423cb8f26077912985a28de1af8.tar.gz
buf.h:
Change the definition of a buffer queue so that bufqdisksort can properly deal with bordered writes. Add inline functions for accessing buffer queues. This should be considered an opaque data structure by clients. callout.h: New callout implementation. device.h: Add support for CAM interrupts. disk.h: disklabel.h: tqdisksort->bufqdisksort kernel.h: Add new configuration entries for configuration hooks and calling cpu_rootconf and cpu_dumpconf. param.h: Add a priority for sleeping waiting on config hooks. proc.h: Update for new callout implementation. queue.h: Add TAILQ_HEAD_INITIALIZER from NetBSD. systm.h: Add prototypes for cpu_root/dumpconf, splcam, splsoftcam, etc..
Diffstat (limited to 'sys/sys/callout.h')
-rw-r--r--sys/sys/callout.h26
1 files changed, 21 insertions, 5 deletions
diff --git a/sys/sys/callout.h b/sys/sys/callout.h
index 454a2a0..e44f0ab 100644
--- a/sys/sys/callout.h
+++ b/sys/sys/callout.h
@@ -36,22 +36,38 @@
* SUCH DAMAGE.
*
* @(#)callout.h 8.2 (Berkeley) 1/21/94
- * $Id: callout.h,v 1.6 1997/02/22 09:44:50 peter Exp $
+ * $Id: callout.h,v 1.7 1997/09/07 05:26:57 bde Exp $
*/
#ifndef _SYS_CALLOUT_H_
#define _SYS_CALLOUT_H_
+#include <sys/queue.h>
+
+SLIST_HEAD(callout_list, callout);
+TAILQ_HEAD(callout_tailq, callout);
+
struct callout {
- struct callout *c_next; /* next callout in queue */
+ union {
+ SLIST_ENTRY(callout) sle;
+ TAILQ_ENTRY(callout) tqe;
+ } c_links;
+ struct callout_tailq *c_bucket;
void *c_arg; /* function argument */
void (*c_func) __P((void *)); /* function to call */
int c_time; /* ticks to the event */
};
+struct callout_handle {
+ struct callout *callout;
+};
+
#ifdef KERNEL
-extern struct callout *callfree, *callout;
+extern struct callout_list callfree;
+extern struct callout *callout;
extern int ncallout;
-#endif
+extern struct callout_tailq *callwheel;
+extern int callwheelsize, callwheelbits, callwheelmask;
+#endif /* KERNEL */
-#endif
+#endif /* _SYS_CALLOUT_H_ */
OpenPOWER on IntegriCloud