2002-09-09 10:03:37

by Peter Waechtler

[permalink] [raw]
Subject: [PATCH] 8/10 sound/oss/dmasound/dmasound_core.c

--- vanilla-2.5.33/sound/oss/dmasound/dmasound_core.c Sat Aug 10 00:03:13 2002
+++ linux-2.5-cli-oss/sound/oss/dmasound/dmasound_core.c Mon Sep 9 00:33:36 2002
@@ -597,9 +597,9 @@
is drained - and if we get here in time then it does not apply.
*/

- save_flags(flags) ; cli() ;
+ spin_lock_irqsave(&dmasound.lock, flags);
write_sq.syncing &= ~2 ; /* take out POST status */
- restore_flags(flags) ;
+ spin_unlock_irqrestore(&dmasound.lock, flags);

if (write_sq.count > 0 &&
(bLeft = write_sq.block_size-write_sq.rear_size) > 0) {
@@ -1347,6 +1347,7 @@
if (dmasound.mach.record)
sq_fops.read = sq_read ;
#endif
+ spin_lock_init(&dmasound.lock);
sq_unit = register_sound_dsp(&sq_fops, -1);
if (sq_unit < 0) {
printk(KERN_ERR "dmasound_core: couldn't register fops\n") ;