Showing error 1217

User: Jiri Slaby
Error type: Double Unlock
Error type description: Some lock is unlocked twice unintentionally in a sequence
File location: drivers/scsi/aacraid/commsup.c
Line in file: 1472
Project: Linux Kernel
Project version: 2.6.28
Tools: Stanse (1.2)
Entered: 2012-04-30 10:52:00 UTC


Source:

1442                        fib->type = FSAFS_NTC_FIB_CONTEXT;
1443                        fib->size = sizeof (struct fib);
1444                        fib->data = hw_fib->data;
1445                        aif = (struct aac_aifcmd *)hw_fib->data;
1446                        aif->command = cpu_to_le32(AifCmdEventNotify);
1447                        aif->seqnum = cpu_to_le32(0xFFFFFFFF);
1448                        ((__le32 *)aif->data)[0] = cpu_to_le32(AifEnExpEvent);
1449                        ((__le32 *)aif->data)[1] = cpu_to_le32(AifExeFirmwarePanic);
1450                        ((__le32 *)aif->data)[2] = cpu_to_le32(AifHighPriority);
1451                        ((__le32 *)aif->data)[3] = cpu_to_le32(BlinkLED);
1452
1453                        /*
1454                         * Put the FIB onto the
1455                         * fibctx's fibs
1456                         */
1457                        list_add_tail(&fib->fiblink, &fibctx->fib_list);
1458                        fibctx->count++;
1459                        /*
1460                         * Set the event to wake up the
1461                         * thread that will waiting.
1462                         */
1463                        up(&fibctx->wait_sem);
1464                } else {
1465                        printk(KERN_WARNING "aifd: didn't allocate NewFib.\n");
1466                        kfree(fib);
1467                        kfree(hw_fib);
1468                }
1469                entry = entry->next;
1470        }
1471
1472        spin_unlock_irqrestore(&aac->fib_lock, flagv);
1473
1474        if (BlinkLED < 0) {
1475                printk(KERN_ERR "%s: Host adapter dead %d\n", aac->name, BlinkLED);
1476                goto out;
1477        }
1478
1479        printk(KERN_ERR "%s: Host adapter BLINK LED 0x%x\n", aac->name, BlinkLED);
1480
1481        if (!aac_check_reset || ((aac_check_reset == 1) &&
1482                (aac->supplement_adapter_info.SupportedOptions2 &
Show full sources