Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Mar 1999 21:39:38 +0000 (GMT)
From:      Doug Rabson <dfr@nlsystems.com>
To:        Nick Hibma <hibma@skylink.it>
Cc:        FreeBSD hackers mailing list <hackers@freebsd.org>
Subject:   Re: scheduling a function call from int routines
Message-ID:  <Pine.BSF.4.05.9903232135470.78570-100000@herring.nlsystems.com>
In-Reply-To: <Pine.BSF.3.96.990323231348.2553A-100000@heidi.plazza.it>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 23 Mar 1999, Nick Hibma wrote:

> 
> The usbd thing we are doing right now, but I don't like it, as you have
> to pick up the pieces when the daemon is killed. Try it and you will see
> what I mean. Lot's of failed transfers. Most probably could be solved, I
> agree, but not as a first priority,
> 
> A kernel thread would be easier and I do remember something like that
> being mentioned somewhere in the manpages. Any chance you know where to
> find it?
> 
> Nick

You can create kernel threads at startup time by using SYSINIT_KT.  This
isn't supported by KLD though so it might not be the best solution.

For usbd, I think it selects on a control device (or something) and wakes
up when an event has happened, calling ioctl (or something) to handle the
event.  This isn't what I was thinking of though; something more like
nfsiod might be better:


	if (!fork())
		usb_syscall(...);	/* never returns */

The syscall could be replaced by an ioctl I guess.

--
Doug Rabson				Mail:  dfr@nlsystems.com
Nonlinear Systems Ltd.			Phone: +44 181 442 9037




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" 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.05.9903232135470.78570-100000>