Module Name: src Committed By: mrg Date: Mon Dec 22 07:02:22 UTC 2014
Modified Files: src/sys/dev: midi.c midivar.h sequencer.c sequencervar.h Log Message: various clean ups for midi and sequencer: midi specific: - add reference counting for midi operations, and ensure that detach waits for other threads to complete before tearing down the device completely. - in detach, halt midi callouts before destroying them - re-check sc->dying after sleeping in midiread() - in real_writebytes(), make sure we're open and not dying - make sure we drop the interrupt lock before calling any code that may want to check thread locks. this is now safe due to the above changes. sequencer specific: - avoid caching the midi softc in the sequencer softc. instead, every time we want to use it, look it up again and make sure it still exists. this fixes various crashes i've seen in the usb midi code when detaching the umidi while it is active. To generate a diff of this commit: cvs rdiff -u -r1.81 -r1.82 src/sys/dev/midi.c cvs rdiff -u -r1.19 -r1.20 src/sys/dev/midivar.h cvs rdiff -u -r1.59 -r1.60 src/sys/dev/sequencer.c cvs rdiff -u -r1.16 -r1.17 src/sys/dev/sequencervar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.