Showing error 923

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/isdn/hisax/icc.c
Line in file: 566
Project: Linux Kernel
Project version: 2.6.28
Tools: Stanse (1.2)
Undetermined 1
Entered: 2012-03-02 21:35:17 UTC


Source:

536                                        cs->writeisac(cs, ICC_SPCR, val);
537                                        cs->writeisac(cs, ICC_ADF1, 0xa);
538                                }
539                        } else {
540                                /* IOM 2 Mode */
541                                cs->writeisac(cs, ICC_SPCR, val);
542                                if (val)
543                                        cs->writeisac(cs, ICC_ADF1, 0x8);
544                                else
545                                        cs->writeisac(cs, ICC_ADF1, 0x0);
546                        }
547                        spin_unlock_irqrestore(&cs->lock, flags);
548                        break;
549                case (HW_DEACTIVATE | RESPONSE):
550                        skb_queue_purge(&cs->rq);
551                        skb_queue_purge(&cs->sq);
552                        if (cs->tx_skb) {
553                                dev_kfree_skb_any(cs->tx_skb);
554                                cs->tx_skb = NULL;
555                        }
556                        if (test_and_clear_bit(FLG_DBUSY_TIMER, &cs->HW_Flags))
557                                del_timer(&cs->dbusytimer);
558                        if (test_and_clear_bit(FLG_L1_DBUSY, &cs->HW_Flags))
559                                schedule_event(cs, D_CLEARBUSY);
560                        break;
561                default:
562                        if (cs->debug & L1_DEB_WARN)
563                                debugl1(cs, "icc_l1hw unknown %04x", pr);
564                        break;
565        }
566}
567
568static void
569setstack_icc(struct PStack *st, struct IsdnCardState *cs)
570{
571        st->l1.l1hw = ICC_l1hw;
572}
573
574static void
575DC_Close_icc(struct IsdnCardState *cs) {
576        kfree(cs->dc.icc.mon_rx);
Show full sources