Showing error 1314

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/scsi/qla2xxx/qla_dbg.c
Line in file: 478
Project: Linux Kernel
Project version: 2.6.28
Tools: Stanse (1.2)
Entered: 2012-05-21 20:30:05 UTC


Source:

 448                    sizeof(fw->risc_ram) / 2, &nxt);
 449
 450        /* Get stack SRAM. */
 451        if (rval == QLA_SUCCESS)
 452                rval = qla2xxx_dump_ram(ha, 0x10000, fw->stack_ram,
 453                    sizeof(fw->stack_ram) / 2, &nxt);
 454
 455        /* Get data SRAM. */
 456        if (rval == QLA_SUCCESS)
 457                rval = qla2xxx_dump_ram(ha, 0x11000, fw->data_ram,
 458                    ha->fw_memory_size - 0x11000 + 1, &nxt);
 459
 460        if (rval == QLA_SUCCESS)
 461                qla2xxx_copy_queues(ha, nxt);
 462
 463        if (rval != QLA_SUCCESS) {
 464                qla_printk(KERN_WARNING, ha,
 465                    "Failed to dump firmware (%x)!!!\n", rval);
 466                ha->fw_dumped = 0;
 467
 468        } else {
 469                qla_printk(KERN_INFO, ha,
 470                    "Firmware dump saved to temp buffer (%ld/%p).\n",
 471                    ha->host_no, ha->fw_dump);
 472                ha->fw_dumped = 1;
 473        }
 474
 475qla2300_fw_dump_failed:
 476        if (!hardware_locked)
 477                spin_unlock_irqrestore(&ha->hardware_lock, flags);
 478}
 479
 480/**
 481 * qla2100_fw_dump() - Dumps binary data from the 2100/2200 firmware.
 482 * @ha: HA context
 483 * @hardware_locked: Called with the hardware_lock
 484 */
 485void
 486qla2100_fw_dump(scsi_qla_host_t *ha, int hardware_locked)
 487{
 488        int                rval;
Show full sources