Showing error 1204

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


Source:

5009        }
5010
5011        /* start IRQ and return */
5012        spin_lock_irqsave(&hc->lock, flags);
5013        enable_hwirq(hc);
5014        spin_unlock_irqrestore(&hc->lock, flags);
5015        return 0;
5016
5017free_card:
5018        release_io_hfcmulti(hc);
5019        if (hc == syncmaster)
5020                syncmaster = NULL;
5021        kfree(hc);
5022        return ret_err;
5023}
5024
5025static void __devexit hfc_remove_pci(struct pci_dev *pdev)
5026{
5027        struct hfc_multi        *card = pci_get_drvdata(pdev);
5028        u_long                        flags;
5029
5030        if (debug)
5031                printk(KERN_INFO "removing hfc_multi card vendor:%x "
5032                    "device:%x subvendor:%x subdevice:%x\n",
5033                    pdev->vendor, pdev->device,
5034                    pdev->subsystem_vendor, pdev->subsystem_device);
5035
5036        if (card) {
5037                spin_lock_irqsave(&HFClock, flags);
5038                release_card(card);
5039                spin_unlock_irqrestore(&HFClock, flags);
5040        }  else {
5041                if (debug)
5042                        printk(KERN_WARNING "%s: drvdata allready removed\n",
5043                            __func__);
5044        }
5045}
5046
5047#define        VENDOR_CCD        "Cologne Chip AG"
5048#define        VENDOR_BN        "beroNet GmbH"
5049#define        VENDOR_DIG        "Digium Inc."
Show full sources