瀏覽代碼

h8300: IRQ flags should be stored in an unsigned long

Fix h8300's asm/atomic.h to store the IRQ flags in an unsigned long to deal
with warnings of the following type:

  arch/h8300/include/asm/atomic.h: In function 'atomic_add_return':
  arch/h8300/include/asm/atomic.h:22: warning: comparison of distinct pointer types lacks a cast
  arch/h8300/include/asm/atomic.h:24: warning: comparison of distinct pointer types lacks a cast

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
David Howells 14 年之前
父節點
當前提交
3ab61eb9fd
共有 1 個文件被更改,包括 10 次插入5 次删除
  1. 10 5
      arch/h8300/include/asm/atomic.h

+ 10 - 5
arch/h8300/include/asm/atomic.h

@@ -18,7 +18,8 @@
 
 
 static __inline__ int atomic_add_return(int i, atomic_t *v)
 static __inline__ int atomic_add_return(int i, atomic_t *v)
 {
 {
-	int ret,flags;
+	unsigned long flags;
+	int ret;
 	local_irq_save(flags);
 	local_irq_save(flags);
 	ret = v->counter += i;
 	ret = v->counter += i;
 	local_irq_restore(flags);
 	local_irq_restore(flags);
@@ -30,7 +31,8 @@ static __inline__ int atomic_add_return(int i, atomic_t *v)
 
 
 static __inline__ int atomic_sub_return(int i, atomic_t *v)
 static __inline__ int atomic_sub_return(int i, atomic_t *v)
 {
 {
-	int ret,flags;
+	unsigned long flags;
+	int ret;
 	local_irq_save(flags);
 	local_irq_save(flags);
 	ret = v->counter -= i;
 	ret = v->counter -= i;
 	local_irq_restore(flags);
 	local_irq_restore(flags);
@@ -42,7 +44,8 @@ static __inline__ int atomic_sub_return(int i, atomic_t *v)
 
 
 static __inline__ int atomic_inc_return(atomic_t *v)
 static __inline__ int atomic_inc_return(atomic_t *v)
 {
 {
-	int ret,flags;
+	unsigned long flags;
+	int ret;
 	local_irq_save(flags);
 	local_irq_save(flags);
 	v->counter++;
 	v->counter++;
 	ret = v->counter;
 	ret = v->counter;
@@ -64,7 +67,8 @@ static __inline__ int atomic_inc_return(atomic_t *v)
 
 
 static __inline__ int atomic_dec_return(atomic_t *v)
 static __inline__ int atomic_dec_return(atomic_t *v)
 {
 {
-	int ret,flags;
+	unsigned long flags;
+	int ret;
 	local_irq_save(flags);
 	local_irq_save(flags);
 	--v->counter;
 	--v->counter;
 	ret = v->counter;
 	ret = v->counter;
@@ -76,7 +80,8 @@ static __inline__ int atomic_dec_return(atomic_t *v)
 
 
 static __inline__ int atomic_dec_and_test(atomic_t *v)
 static __inline__ int atomic_dec_and_test(atomic_t *v)
 {
 {
-	int ret,flags;
+	unsigned long flags;
+	int ret;
 	local_irq_save(flags);
 	local_irq_save(flags);
 	--v->counter;
 	--v->counter;
 	ret = v->counter;
 	ret = v->counter;