Showing error 575

User: Jiri Slaby
Error type: Double Lock
Error type description: Some lock is locked twice unintentionally in a sequence
File location: sound/oss/sscape.c
Line in file: 168
Project: Linux Kernel
Project version: 2.6.28
Confirmation: Driver removed b7d5d946e50116f4150542f881ac90ac74c28165
Tools: Stanse (1.2)
Entered: 2011-11-07 22:19:59 UTC


Source:

 138        9, 7, 5, 15
 139};
 140
 141static char valid_interrupts_new[] = {
 142        9, 5, 7, 10
 143};
 144
 145static char *valid_interrupts = valid_interrupts_new;
 146
 147/*
 148 *        See the bottom of the driver. This can be set by spea =0/1.
 149 */
 150 
 151#ifdef REVEAL_SPEA
 152static char old_hardware = 1;
 153#else
 154static char old_hardware;
 155#endif
 156
 157static void sleep(unsigned howlong)
 158{
 159        current->state = TASK_INTERRUPTIBLE;
 160        schedule_timeout(howlong);
 161}
 162
 163static unsigned char sscape_read(struct sscape_info *devc, int reg)
 164{
 165        unsigned long flags;
 166        unsigned char val;
 167
 168        spin_lock_irqsave(&devc->lock,flags);
 169        outb(reg, PORT(ODIE_ADDR));
 170        val = inb(PORT(ODIE_DATA));
 171        spin_unlock_irqrestore(&devc->lock,flags);
 172        return val;
 173}
 174
 175static void __sscape_write(int reg, int data)
 176{
 177        outb(reg, PORT(ODIE_ADDR));
 178        outb(data, PORT(ODIE_DATA));
Show full sources