Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys/dev



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.




Home | Main Index | Thread Index | Old Index