Showing error 1551

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


Source:

 59 */
 60
 61/*
 62 *        Generic /proc/net/router/<file> file and inode operations
 63 */
 64
 65/*
 66 *        /proc/net/router
 67 */
 68
 69static struct proc_dir_entry *proc_router;
 70
 71/* Strings */
 72
 73/*
 74 *        Interface functions
 75 */
 76
 77/****** Proc filesystem entry points ****************************************/
 78
 79/*
 80 *        Iterator
 81 */
 82static void *r_start(struct seq_file *m, loff_t *pos)
 83{
 84        struct wan_device *wandev;
 85        loff_t l = *pos;
 86
 87        lock_kernel();
 88        if (!l--)
 89                return SEQ_START_TOKEN;
 90        for (wandev = wanrouter_router_devlist; l-- && wandev;
 91             wandev = wandev->next)
 92                ;
 93        return wandev;
 94}
 95
 96static void *r_next(struct seq_file *m, void *v, loff_t *pos)
 97{
 98        struct wan_device *wandev = v;
 99        (*pos)++;
Show full sources