Commit MetaInfo

Revision54692056a2010187b6c4e675b56b63f2809874e2 (tree)
Time2018-07-22 23:13:07
AuthorGeert Uytterhoeven <geert@linu...>
CommiterYoshinori Sato

Log Message

h8300: Correct signature of test_bit()

mm/filemap.c: In function 'clear_bit_unlock_is_negative_byte':
mm/filemap.c:1181:30: warning: passing argument 2 of 'test_bit' discards 'volatile' qualifier from pointer target type [-Wdiscarded-qualifiers]
return test_bit(PG_waiters, mem);

In file included from include/linux/bitops.h:38,

from include/linux/kernel.h:11,
from include/linux/list.h:9,
from include/linux/wait.h:7,
from include/linux/wait_bit.h:8,
from include/linux/fs.h:6,
from include/linux/dax.h:5,
from mm/filemap.c:14:

arch/h8300/include/asm/bitops.h:69:57: note: expected 'const long unsigned int *' but argument is of type 'volatile void *'
static inline int test_bit(int nr, const unsigned long *addr)


Make the bitmask pointed to by the "addr" parameter volatile to fix
this, like is done on other architectures.

Signed-off-by: Geert Uytterhoeven <>
Signed-off-by: Yoshinori Sato <>

Change Summary

Incremental Difference

--- a/arch/h8300/include/asm/bitops.h
+++ b/arch/h8300/include/asm/bitops.h
@@ -66,7 +66,7 @@ H8300_GEN_BITOP(change_bit, "bnot")
6767 #undef H8300_GEN_BITOP
69-static inline int test_bit(int nr, const unsigned long *addr)
69+static inline int test_bit(int nr, const volatile unsigned long *addr)
7070 {
7171 int ret = 0;
7272 unsigned char *b_addr;
Show on old repository browser