Showing error 1567

User: Jiri Slaby
Error type: Leaving function in locked state
Error type description: Some lock is not unlocked on all paths of a function, so it is leaked
File location: drivers/block/cciss.c
Line in file: 3716
Project: Linux Kernel
Project version: 2.6.28
Tools: Stanse (1.2)
Entered: 2012-05-29 20:11:37 UTC


Source:

3686        .id_table = cciss_pci_device_id,        /* id_table */
3687        .shutdown = cciss_shutdown,
3688};
3689
3690/*
3691 *  This is it.  Register the PCI driver information for the cards we control
3692 *  the OS will call our registered routines when it finds one of our cards.
3693 */
3694static int __init cciss_init(void)
3695{
3696        printk(KERN_INFO DRIVER_NAME "\n");
3697
3698        /* Register for our PCI devices */
3699        return pci_register_driver(&cciss_pci_driver);
3700}
3701
3702static void __exit cciss_cleanup(void)
3703{
3704        int i;
3705
3706        pci_unregister_driver(&cciss_pci_driver);
3707        /* double check that all controller entrys have been removed */
3708        for (i = 0; i < MAX_CTLR; i++) {
3709                if (hba[i] != NULL) {
3710                        printk(KERN_WARNING "cciss: had to remove"
3711                               " controller %d\n", i);
3712                        cciss_remove_one(hba[i]->pdev);
3713                }
3714        }
3715        remove_proc_entry("driver/cciss", NULL);
3716}
3717
3718static void fail_all_cmds(unsigned long ctlr)
3719{
3720        /* If we get here, the board is apparently dead. */
3721        ctlr_info_t *h = hba[ctlr];
3722        CommandList_struct *c;
3723        unsigned long flags;
3724
3725        printk(KERN_WARNING "cciss%d: controller not responding.\n", h->ctlr);
3726        h->alive = 0;                /* the controller apparently died... */
Show full sources