Skip to content

Commit

Permalink
[PATCH] fix sparse warnings from {asm,net}/checksum.h
Browse files Browse the repository at this point in the history
Rename the variable "sum" in the __range_ok macros to avoid name collisions
causing lots of "symbol shadows an earlier one" warnings by sparse.

Signed-off-by: Tilman Schmidt <tilman@imap.cc>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Andi Kleen <ak@suse.de>
Cc: Hirokazu Takata <takata@linux-m32r.org>
Acked-by: Ian Molton <spyro@f2s.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Tilman Schmidt authored and Linus Torvalds committed Feb 11, 2007
1 parent 3db5db4 commit 16cf5b3
Show file tree
Hide file tree
Showing 5 changed files with 10 additions and 10 deletions.
4 changes: 2 additions & 2 deletions include/asm-arm/uaccess.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,10 @@ static inline void set_fs(mm_segment_t fs)

/* We use 33-bit arithmetic here... */
#define __range_ok(addr,size) ({ \
unsigned long flag, sum; \
unsigned long flag, roksum; \
__chk_user_ptr(addr); \
__asm__("adds %1, %2, %3; sbcccs %1, %1, %0; movcc %0, #0" \
: "=&r" (flag), "=&r" (sum) \
: "=&r" (flag), "=&r" (roksum) \
: "r" (addr), "Ir" (size), "0" (current_thread_info()->addr_limit) \
: "cc"); \
flag; })
Expand Down
4 changes: 2 additions & 2 deletions include/asm-arm26/uaccess-asm.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,9 @@ static inline void set_fs (mm_segment_t fs)
}

#define __range_ok(addr,size) ({ \
unsigned long flag, sum; \
unsigned long flag, roksum; \
__asm__ __volatile__("subs %1, %0, %3; cmpcs %1, %2; movcs %0, #0" \
: "=&r" (flag), "=&r" (sum) \
: "=&r" (flag), "=&r" (roksum) \
: "r" (addr), "Ir" (size), "0" (current_thread_info()->addr_limit) \
: "cc"); \
flag; })
Expand Down
4 changes: 2 additions & 2 deletions include/asm-i386/uaccess.h
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,10 @@ extern struct movsl_mask {
* This needs 33-bit arithmetic. We have a carry...
*/
#define __range_ok(addr,size) ({ \
unsigned long flag,sum; \
unsigned long flag,roksum; \
__chk_user_ptr(addr); \
asm("addl %3,%1 ; sbbl %0,%0; cmpl %1,%4; sbbl $0,%0" \
:"=&r" (flag), "=r" (sum) \
:"=&r" (flag), "=r" (roksum) \
:"1" (addr),"g" ((int)(size)),"rm" (current_thread_info()->addr_limit.seg)); \
flag; })

Expand Down
4 changes: 2 additions & 2 deletions include/asm-m32r/uaccess.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,15 +68,15 @@ static inline void set_fs(mm_segment_t s)
* This needs 33-bit arithmetic. We have a carry...
*/
#define __range_ok(addr,size) ({ \
unsigned long flag, sum; \
unsigned long flag, roksum; \
__chk_user_ptr(addr); \
asm ( \
" cmpu %1, %1 ; clear cbit\n" \
" addx %1, %3 ; set cbit if overflow\n" \
" subx %0, %0\n" \
" cmpu %4, %1\n" \
" subx %0, %5\n" \
: "=&r" (flag), "=r" (sum) \
: "=&r" (flag), "=r" (roksum) \
: "1" (addr), "r" ((int)(size)), \
"r" (current_thread_info()->addr_limit.seg), "r" (0) \
: "cbit" ); \
Expand Down
4 changes: 2 additions & 2 deletions include/asm-x86_64/uaccess.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,11 @@
* Uhhuh, this needs 65-bit arithmetic. We have a carry..
*/
#define __range_not_ok(addr,size) ({ \
unsigned long flag,sum; \
unsigned long flag,roksum; \
__chk_user_ptr(addr); \
asm("# range_ok\n\r" \
"addq %3,%1 ; sbbq %0,%0 ; cmpq %1,%4 ; sbbq $0,%0" \
:"=&r" (flag), "=r" (sum) \
:"=&r" (flag), "=r" (roksum) \
:"1" (addr),"g" ((long)(size)),"g" (current_thread_info()->addr_limit.seg)); \
flag; })

Expand Down

0 comments on commit 16cf5b3

Please sign in to comment.