Showing error 1505

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


Source:

 963
 964        /* iriap_close(self); */
 965}
 966
 967#ifdef CONFIG_PROC_FS
 968
 969static const char *ias_value_types[] = {
 970        "IAS_MISSING",
 971        "IAS_INTEGER",
 972        "IAS_OCT_SEQ",
 973        "IAS_STRING"
 974};
 975
 976static inline struct ias_object *irias_seq_idx(loff_t pos)
 977{
 978        struct ias_object *obj;
 979
 980        for (obj = (struct ias_object *) hashbin_get_first(irias_objects);
 981             obj; obj = (struct ias_object *) hashbin_get_next(irias_objects)) {
 982                if (pos-- == 0)
 983                        break;
 984        }
 985
 986        return obj;
 987}
 988
 989static void *irias_seq_start(struct seq_file *seq, loff_t *pos)
 990{
 991        spin_lock_irq(&irias_objects->hb_spinlock);
 992
 993        return *pos ? irias_seq_idx(*pos - 1) : SEQ_START_TOKEN;
 994}
 995
 996static void *irias_seq_next(struct seq_file *seq, void *v, loff_t *pos)
 997{
 998        ++*pos;
 999
1000        return (v == SEQ_START_TOKEN)
1001                ? (void *) hashbin_get_first(irias_objects)
1002                : (void *) hashbin_get_next(irias_objects);
1003}
Show full sources