mirror of
https://github.com/torvalds/linux.git
synced 2026-07-18 11:37:36 +02:00
We have found some issues with Au1550 AC'97 OSS driver in 2.6 (sound/oss/au1550_ac97.c), though it also should concern 2.4 driver (drivers/sound/au1550_psc.c). start_dac() grabs a spinlock already held by its caller, au1550_write(). This doesn't show up with the standard UP spinlock impelmentation but when the different one (mutex based) is in use, a lockup happens. And the interrupt handlers also didn't grab the spinlock -- that's OK in the usual kernel but not when the IRQ handlers are threaded. So, they're grabbing the spinlock now (as every correct interrupt handler should do). Signed-off-by: Konstantin Baidarov <kbaidarov@ru.mvista.com> Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> |
||
|---|---|---|
| .. | ||
| cs4281 | ||
| dmasound | ||
| emu10k1 | ||
| ac97_codec.c | ||
| ac97_plugin_ad1980.c | ||
| ac97.c | ||
| ac97.h | ||
| aci.c | ||
| aci.h | ||
| ad1816.c | ||
| ad1848_mixer.h | ||
| ad1848.c | ||
| ad1848.h | ||
| ad1889.c | ||
| ad1889.h | ||
| adlib_card.c | ||
| aedsp16.c | ||
| ali5455.c | ||
| au1000.c | ||
| au1550_ac97.c | ||
| audio_syms.c | ||
| audio.c | ||
| awe_hw.h | ||
| awe_wave.c | ||
| awe_wave.h | ||
| bin2hex.c | ||
| btaudio.c | ||
| CHANGELOG | ||
| cmpci.c | ||
| coproc.h | ||
| COPYING | ||
| cs46xx_wrapper-24.h | ||
| cs46xx.c | ||
| cs46xxpm-24.h | ||
| cs46xxpm.h | ||
| cs461x_image.h | ||
| cs461x.h | ||
| cs4232.c | ||
| dev_table.c | ||
| dev_table.h | ||
| dm.h | ||
| dmabuf.c | ||
| es1370.c | ||
| es1371.c | ||
| esssolo1.c | ||
| forte.c | ||
| gus_card.c | ||
| gus_hw.h | ||
| gus_linearvol.h | ||
| gus_midi.c | ||
| gus_vol.c | ||
| gus_wave.c | ||
| gus.h | ||
| hal2.c | ||
| hal2.h | ||
| harmony.c | ||
| hex2hex.c | ||
| i810_audio.c | ||
| ics2101.c | ||
| ite8172.c | ||
| iwmem.h | ||
| kahlua.c | ||
| Kconfig | ||
| mad16.c | ||
| maestro.c | ||
| maestro.h | ||
| maestro3.c | ||
| maestro3.h | ||
| Makefile | ||
| maui.c | ||
| midi_ctrl.h | ||
| midi_syms.c | ||
| midi_synth.c | ||
| midi_synth.h | ||
| midibuf.c | ||
| mpu401.c | ||
| mpu401.h | ||
| msnd_classic.c | ||
| msnd_classic.h | ||
| msnd_pinnacle.c | ||
| msnd_pinnacle.h | ||
| msnd.c | ||
| msnd.h | ||
| nec_vrc5477.c | ||
| nm256_audio.c | ||
| nm256_coeff.h | ||
| nm256.h | ||
| opl3_hw.h | ||
| opl3.c | ||
| opl3.h | ||
| opl3sa.c | ||
| opl3sa2.c | ||
| os.h | ||
| pas2_card.c | ||
| pas2_midi.c | ||
| pas2_mixer.c | ||
| pas2_pcm.c | ||
| pas2.h | ||
| pss.c | ||
| README.FIRST | ||
| rme96xx.c | ||
| rme96xx.h | ||
| sb_audio.c | ||
| sb_card.c | ||
| sb_card.h | ||
| sb_common.c | ||
| sb_ess.c | ||
| sb_ess.h | ||
| sb_midi.c | ||
| sb_mixer.c | ||
| sb_mixer.h | ||
| sb.h | ||
| sequencer_syms.c | ||
| sequencer.c | ||
| sgalaxy.c | ||
| sh_dac_audio.c | ||
| sonicvibes.c | ||
| sound_calls.h | ||
| sound_config.h | ||
| sound_firmware.h | ||
| sound_syms.c | ||
| sound_timer.c | ||
| soundcard.c | ||
| soundvers.h | ||
| sscape.c | ||
| swarm_cs4297a.c | ||
| sys_timer.c | ||
| trident.c | ||
| trident.h | ||
| trix.c | ||
| tuning.h | ||
| uart401.c | ||
| uart6850.c | ||
| ulaw.h | ||
| v_midi.c | ||
| v_midi.h | ||
| via82cxxx_audio.c | ||
| vidc_fill.S | ||
| vidc.c | ||
| vidc.h | ||
| vwsnd.c | ||
| waveartist.c | ||
| waveartist.h | ||
| wavfront.c | ||
| wf_midi.c | ||
| ymfpci_image.h | ||
| ymfpci.c | ||
| ymfpci.h | ||
| yss225.c | ||
| yss225.h | ||
The modular sound driver patches were funded by Red Hat Software (www.redhat.com). The sound driver here is thus a modified version of Hannu's code. Please bear that in mind when considering the appropriate forums for bug reporting. Alan Cox