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 |
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)++;