tree:
https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git
btree-private-unions
head: 30d91fbcef11ed07350f943fd3f695e0fb0635dd
commit: 35137236b91e958ca683fd4a045a29c0b5310938 [52/72] xfs: don't crash with
assfail
config: um-x86_64_defconfig (attached as .config)
compiler: gcc-7 (Debian 7.5.0-5) 7.5.0
reproduce:
git checkout 35137236b91e958ca683fd4a045a29c0b5310938
# save the attached .config to linux build tree
make ARCH=um SUBARCH=x86_64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
In file included from include/linux/kernel.h:11:0,
from include/linux/list.h:9,
from include/linux/preempt.h:11,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from fs///attr.c:10:
include/asm-generic/fixmap.h: In function 'fix_to_virt':
> include/asm-generic/fixmap.h:32:19: error: comparison of unsigned
expression >= 0 is always true [-Werror=type-limits]
BUILD_BUG_ON(idx >=
__end_of_fixed_addresses);
^
include/linux/compiler.h:330:9: note: in definition of macro
'__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler.h:350:2: note: in expansion of macro
'_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro
'compiletime_assert'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
^~~~~~~~~~~~~~~~
> include/asm-generic/fixmap.h:32:2: note: in expansion of macro
'BUILD_BUG_ON'
BUILD_BUG_ON(idx >= __end_of_fixed_addresses);
^~~~~~~~~~~~
In file included from include/linux/uaccess.h:11:0,
from include/linux/sched/task.h:11,
from include/linux/sched/signal.h:9,
from fs///attr.c:13:
arch/um/include/asm/uaccess.h: In function '__access_ok':
> arch/um/include/asm/uaccess.h:17:29: error: comparison of
unsigned expression >= 0 is always true [-Werror=type-limits]
(((unsigned
long) (addr) >= FIXADDR_USER_START) && \
^
> arch/um/include/asm/uaccess.h:45:3: note: in expansion of macro
'__access_ok_vsyscall'
__access_ok_vsyscall(addr, size) ||
^~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
--
In file included from include/linux/kernel.h:11:0,
from include/linux/list.h:9,
from include/linux/preempt.h:11,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from fs///ext4/balloc.c:15:
include/asm-generic/fixmap.h: In function 'fix_to_virt':
> include/asm-generic/fixmap.h:32:19: warning: comparison of
unsigned expression >= 0 is always true [-Wtype-limits]
BUILD_BUG_ON(idx
>= __end_of_fixed_addresses);
^
include/linux/compiler.h:330:9: note: in definition of macro
'__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler.h:350:2: note: in expansion of macro
'_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro
'compiletime_assert'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
^~~~~~~~~~~~~~~~
> include/asm-generic/fixmap.h:32:2: note: in expansion of macro
'BUILD_BUG_ON'
BUILD_BUG_ON(idx >= __end_of_fixed_addresses);
^~~~~~~~~~~~
In file included from include/linux/uaccess.h:11:0,
from include/linux/highmem.h:9,
from include/linux/pagemap.h:11,
from include/linux/buffer_head.h:14,
from fs///ext4/balloc.c:19:
arch/um/include/asm/uaccess.h: In function '__access_ok':
> arch/um/include/asm/uaccess.h:17:29: warning: comparison of
unsigned expression >= 0 is always true [-Wtype-limits]
(((unsigned long)
(addr) >= FIXADDR_USER_START) && \
^
> arch/um/include/asm/uaccess.h:45:3: note: in expansion of macro
'__access_ok_vsyscall'
__access_ok_vsyscall(addr, size) ||
^~~~~~~~~~~~~~~~~~~~
--
In file included from include/linux/uaccess.h:11:0,
from include/linux/crypto.h:21,
from include/crypto/hash.h:11,
from include/linux/uio.h:10,
from include/linux/socket.h:8,
from include/linux/compat.h:15,
from fs///ext4/ioctl.c:14:
arch/um/include/asm/uaccess.h: In function '__access_ok':
> arch/um/include/asm/uaccess.h:17:29: warning: comparison of
unsigned expression >= 0 is always true [-Wtype-limits]
(((unsigned long)
(addr) >= FIXADDR_USER_START) && \
^
> arch/um/include/asm/uaccess.h:45:3: note: in expansion of macro
'__access_ok_vsyscall'
__access_ok_vsyscall(addr, size) ||
^~~~~~~~~~~~~~~~~~~~
In file included from include/linux/kernel.h:11:0,
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 fs///ext4/ioctl.c:11:
include/asm-generic/fixmap.h: In function 'fix_to_virt':
> include/asm-generic/fixmap.h:32:19: warning: comparison of
unsigned expression >= 0 is always true [-Wtype-limits]
BUILD_BUG_ON(idx
>= __end_of_fixed_addresses);
^
include/linux/compiler.h:330:9: note: in definition of macro
'__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler.h:350:2: note: in expansion of macro
'_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro
'compiletime_assert'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
^~~~~~~~~~~~~~~~
> include/asm-generic/fixmap.h:32:2: note: in expansion of macro
'BUILD_BUG_ON'
BUILD_BUG_ON(idx >= __end_of_fixed_addresses);
^~~~~~~~~~~~
vim +32 include/asm-generic/fixmap.h
d57c33c5daa4ef Mark Salter 2014-01-23 23
d57c33c5daa4ef Mark Salter 2014-01-23 24 #ifndef __ASSEMBLY__
d57c33c5daa4ef Mark Salter 2014-01-23 25 /*
d57c33c5daa4ef Mark Salter 2014-01-23 26 * 'index to address' translation. If
anyone tries to use the idx
d57c33c5daa4ef Mark Salter 2014-01-23 27 * directly without translation, we catch the
bug with a NULL-deference
d57c33c5daa4ef Mark Salter 2014-01-23 28 * kernel oops. Illegal ranges of incoming
indices are caught too.
d57c33c5daa4ef Mark Salter 2014-01-23 29 */
d57c33c5daa4ef Mark Salter 2014-01-23 30 static __always_inline unsigned long
fix_to_virt(const unsigned int idx)
d57c33c5daa4ef Mark Salter 2014-01-23 31 {
d57c33c5daa4ef Mark Salter 2014-01-23 @32 BUILD_BUG_ON(idx >=
__end_of_fixed_addresses);
d57c33c5daa4ef Mark Salter 2014-01-23 33 return __fix_to_virt(idx);
d57c33c5daa4ef Mark Salter 2014-01-23 34 }
d57c33c5daa4ef Mark Salter 2014-01-23 35
:::::: The code at line 32 was first introduced by commit
:::::: d57c33c5daa4efa9e4d303bd0faf868080b532be add generic fixmap.h
:::::: TO: Mark Salter <msalter(a)redhat.com>
:::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org