Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/sys/dev/mscp
Module Name: src
Committed By: mrg
Date: Thu Jan 11 06:19:49 UTC 2024
Modified Files:
src/sys/dev/mscp: mscp.c mscp_disk.c mscp_tape.c mscpvar.h
Log Message:
mscp(4): add ability for rronline() callback in a workqueue
when an ra(4) disk comes online the hardware interrupt ends up calling
disk_set_info(), which triggers a sleep lock/alloc in this path which
is triggered by LOCKDEBUG.
piggy-back on the existing workqueue for autoconfiguration to handle
this path and run the online completion in the work queue.
this is a little ugly, in that it puts two different types of work
into the one queue, but seems less ugly than creating a second
workqueue for what is likely another one-time event (infact, the other
user may be better handled via config_defer() -- i did not look too
closely.)
with this, LOCKDEBUG kernels work.
tested in simh.
To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 src/sys/dev/mscp/mscp.c
cvs rdiff -u -r1.90 -r1.91 src/sys/dev/mscp/mscp_disk.c
cvs rdiff -u -r1.43 -r1.44 src/sys/dev/mscp/mscp_tape.c
cvs rdiff -u -r1.18 -r1.19 src/sys/dev/mscp/mscpvar.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index