浏览代码

wanrouter: fix sparse warnings: context imbalance

Impact: Attribute functions with __acquires(...) resp. __releases(...).

Fix this sparse warnings:
  net/wanrouter/wanproc.c:82:13: warning: context imbalance in 'r_start' - wrong count at exit
  net/wanrouter/wanproc.c:103:13: warning: context imbalance in 'r_stop' - unexpected unlock
  net/wanrouter/wanmain.c:765:13: warning: context imbalance in 'lock_adapter_irq' - wrong count at exit
  net/wanrouter/wanmain.c:771:13: warning: context imbalance in 'unlock_adapter_irq' - unexpected unlock

Signed-off-by: Hannes Eder <hannes@hanneseder.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Hannes Eder 16 年之前
父节点
当前提交
9ee62630fd
共有 2 个文件被更改,包括 8 次插入2 次删除
  1. 6 2
      net/wanrouter/wanmain.c
  2. 2 0
      net/wanrouter/wanproc.c

+ 6 - 2
net/wanrouter/wanmain.c

@@ -86,8 +86,10 @@ static int wanrouter_device_del_if(struct wan_device *wandev,
 
 
 static struct wan_device *wanrouter_find_device(char *name);
 static struct wan_device *wanrouter_find_device(char *name);
 static int wanrouter_delete_interface(struct wan_device *wandev, char *name);
 static int wanrouter_delete_interface(struct wan_device *wandev, char *name);
-static void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
-static void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
+static void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags)
+	__acquires(lock);
+static void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags)
+	__releases(lock);
 
 
 
 
 
 
@@ -763,12 +765,14 @@ static int wanrouter_delete_interface(struct wan_device *wandev, char *name)
 }
 }
 
 
 static void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags)
 static void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags)
+	__acquires(lock)
 {
 {
 	spin_lock_irqsave(lock, *smp_flags);
 	spin_lock_irqsave(lock, *smp_flags);
 }
 }
 
 
 
 
 static void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags)
 static void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags)
+	__releases(lock)
 {
 {
 	spin_unlock_irqrestore(lock, *smp_flags);
 	spin_unlock_irqrestore(lock, *smp_flags);
 }
 }

+ 2 - 0
net/wanrouter/wanproc.c

@@ -80,6 +80,7 @@ static struct proc_dir_entry *proc_router;
  *	Iterator
  *	Iterator
  */
  */
 static void *r_start(struct seq_file *m, loff_t *pos)
 static void *r_start(struct seq_file *m, loff_t *pos)
+	__acquires(kernel_lock)
 {
 {
 	struct wan_device *wandev;
 	struct wan_device *wandev;
 	loff_t l = *pos;
 	loff_t l = *pos;
@@ -101,6 +102,7 @@ static void *r_next(struct seq_file *m, void *v, loff_t *pos)
 }
 }
 
 
 static void r_stop(struct seq_file *m, void *v)
 static void r_stop(struct seq_file *m, void *v)
+	__releases(kernel_lock)
 {
 {
 	unlock_kernel();
 	unlock_kernel();
 }
 }