I'm developing a character driver which tracks a lot of state on a
per-open basis.  I've got several mutexes in there which are
initialzed at open, and destroyed at close.  After a few
dozen opens, witness seems to croak with:

    witness_get: witness exhausted

Am I leaking something?  Or is the witness code?  I looked at
subr_witness.c, and I don't see witness_free() being called from
witness_destroy().  There's probably some design constraint that
I don't understand.  

If the fault is with the witness code, can it be fixed?

FWIW, Witness (and the FreeBSD debugging environment in general) is
why I've gotten approval to co-develop this driver on FreeBSD (in
addition to linux).  Its already caught several locking bugs.



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to