Showing error 1582

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/ssb/main.c
Line in file: 1380
Project: Linux Kernel
Project version: 2.6.28
Tools: Stanse (1.2)
Entered: 2012-05-29 20:11:37 UTC


Source:

1350        /* See the comment at the ssb_is_early_boot definition */
1351        ssb_is_early_boot = 0;
1352        err = bus_register(&ssb_bustype);
1353        if (err)
1354                return err;
1355
1356        /* Maybe we already registered some buses at early boot.
1357         * Check for this and attach them
1358         */
1359        ssb_buses_lock();
1360        err = ssb_attach_queued_buses();
1361        ssb_buses_unlock();
1362        if (err)
1363                bus_unregister(&ssb_bustype);
1364
1365        err = b43_pci_ssb_bridge_init();
1366        if (err) {
1367                ssb_printk(KERN_ERR "Broadcom 43xx PCI-SSB-bridge "
1368                           "initialization failed\n");
1369                /* don't fail SSB init because of this */
1370                err = 0;
1371        }
1372        err = ssb_gige_init();
1373        if (err) {
1374                ssb_printk(KERN_ERR "SSB Broadcom Gigabit Ethernet "
1375                           "driver initialization failed\n");
1376                /* don't fail SSB init because of this */
1377                err = 0;
1378        }
1379
1380        return err;
1381}
1382/* ssb must be initialized after PCI but before the ssb drivers.
1383 * That means we must use some initcall between subsys_initcall
1384 * and device_initcall. */
1385fs_initcall(ssb_modinit);
1386
1387static void __exit ssb_modexit(void)
1388{
1389        ssb_gige_exit();
1390        b43_pci_ssb_bridge_exit();
Show full sources