Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 May 2000 11:20:32 +0100 (BST)
From:      Nick Hibma <n_hibma@calcaphon.com>
To:        Mike Smith <msmith@freebsd.org>
Cc:        Doug Rabson <dfr@nlsystems.com>, arch@freebsd.org
Subject:   Re: A new api for asynchronous task execution 
Message-ID:  <Pine.BSF.4.20.0005151116440.82339-100000@localhost>
In-Reply-To: <200005141948.MAA09452@mass.cdrom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> We have a number of different callout list implementation kicking around 
> in the kernel at the moment; 
> 
>  - the EVENTHANDLER stuff
>  - the optimised callout list handling in kern_timeout.c
>  - a few ad-hoc leftovers like config_intrhook that should have been
>    EVENTHANDLERed but weren't

- The delayed attach for disk devices
- The after interrupts-have-been-switched-on task queue

None of these need any functionality above the provided stuff.

>  - The ability to search for a taskqueue by name (I really don't like the 
>    hard binding that's required by having the linker do this).

Good idea. This can easily be implemented on what is there now.

	(struct taskqueue *) taskqueue_find(const char *name)

>  - Some more flexibility in the enqueueing of tasks, particularly the 
>    ability to specify a priority so that tasks on the queue are executed 
>    in an ordered fashion.

It would be useful in the case of attachment of drives (giving priority
to the fixed controllers over for example the USB ones (USB Zip drives
not stealing the da0 entry when attached without wiring things down,
John Baldwin reported this one).

>  - Static taskqueue initialisers.

> 
> None of these are particularly heavyweight, and they'll all end up 
> *reducing* bloat and complexity.

I agree. Doing it right the first time.

Nick
--
n_hibma@webweaving.org
n_hibma@freebsd.org                                          USB project
http://www.etla.net/~n_hibma/



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.20.0005151116440.82339-100000>