scsi-da does not work with INVARIANTS (fwd)

Kenneth D. Merry ken at kdm.org
Mon Aug 25 22:36:48 PDT 2003


On Mon, Aug 25, 2003 at 18:29:49 -0600, Kenneth D. Merry wrote:
> On Mon, Aug 25, 2003 at 13:49:30 -0700, Nate Lawson wrote:
> > Ken is aware of the following problem.  It is in both cd(4) and da(4) as
> > well as stable and current.  One possible approach would be to run
> > {da,cd}register() from a task queue and not at interrupt time.
> 
> That would be tricky, since the peripheral registration process currently
> expects a success/failure return from the peripheral constructor.
> 
> Just putting the sysctl creation in a task queue, though, would not be too
> difficult.
> 
> One question I have, though, is whether task queues run in a thread context
> or not.  If not, then we'll have the same problem.

The answer is -- the currently defined task queues use software
interrupts.

If it is possible to create a task queue that uses a kernel thread instead,
that might be a generally useful thing.  (And it might solve this
particular issue.)

Ken
-- 
Kenneth Merry
ken at kdm.org


More information about the freebsd-stable mailing list