* [vfs:uaccess.mips 9/14] arch/mips/kernel/mips-r2-to-r6-emul.c:1203:8: note: in expansion of macro 'access_ok'
@ 2017-03-29 9:55 kbuild test robot
0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2017-03-29 9:55 UTC (permalink / raw)
To: Al Viro; +Cc: kbuild-all, linux-fsdevel
[-- Attachment #1: Type: text/plain, Size: 9913 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git uaccess.mips
head: fdfb4ac6539d5fc629efc14c586f32ddec05b13b
commit: 1026239ffbda8a5af9a0d7090d2ea114a01b6816 [9/14] mips: sanitize __access_ok()
config: mips-malta_qemu_32r6_defconfig (attached as .config)
compiler: mipsel-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 1026239ffbda8a5af9a0d7090d2ea114a01b6816
# save the attached .config to linux build tree
make.cross ARCH=mips
All warnings (new ones prefixed by >>):
In file included from arch/mips/include/asm/bug.h:4:0,
from include/linux/bug.h:4,
from arch/mips/kernel/mips-r2-to-r6-emul.c:13:
arch/mips/kernel/mips-r2-to-r6-emul.c: In function 'mipsr2_decoder':
arch/mips/include/asm/uaccess.h:138:21: error: passing argument 1 of '__access_ok' makes pointer from integer without a cast [-Werror=int-conversion]
likely(__access_ok((addr), (size)))
^
include/linux/compiler.h:178:40: note: in definition of macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
^
>> arch/mips/kernel/mips-r2-to-r6-emul.c:1203:8: note: in expansion of macro 'access_ok'
if (!access_ok(VERIFY_READ, vaddr, 4)) {
^~~~~~~~~
In file included from include/linux/uaccess.h:13:0,
from arch/mips/kernel/mips-r2-to-r6-emul.c:32:
arch/mips/include/asm/uaccess.h:131:19: note: expected 'const void *' but argument is of type 'long unsigned int'
static inline int __access_ok(const void __user *p, unsigned long size)
^~~~~~~~~~~
In file included from arch/mips/include/asm/bug.h:4:0,
from include/linux/bug.h:4,
from arch/mips/kernel/mips-r2-to-r6-emul.c:13:
arch/mips/include/asm/uaccess.h:138:21: error: passing argument 1 of '__access_ok' makes pointer from integer without a cast [-Werror=int-conversion]
likely(__access_ok((addr), (size)))
^
include/linux/compiler.h:178:40: note: in definition of macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
^
arch/mips/kernel/mips-r2-to-r6-emul.c:1276:8: note: in expansion of macro 'access_ok'
if (!access_ok(VERIFY_READ, vaddr, 4)) {
^~~~~~~~~
In file included from include/linux/uaccess.h:13:0,
from arch/mips/kernel/mips-r2-to-r6-emul.c:32:
arch/mips/include/asm/uaccess.h:131:19: note: expected 'const void *' but argument is of type 'long unsigned int'
static inline int __access_ok(const void __user *p, unsigned long size)
^~~~~~~~~~~
In file included from arch/mips/include/asm/bug.h:4:0,
from include/linux/bug.h:4,
from arch/mips/kernel/mips-r2-to-r6-emul.c:13:
arch/mips/include/asm/uaccess.h:138:21: error: passing argument 1 of '__access_ok' makes pointer from integer without a cast [-Werror=int-conversion]
likely(__access_ok((addr), (size)))
^
include/linux/compiler.h:178:40: note: in definition of macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
^
arch/mips/kernel/mips-r2-to-r6-emul.c:1350:8: note: in expansion of macro 'access_ok'
if (!access_ok(VERIFY_WRITE, vaddr, 4)) {
^~~~~~~~~
In file included from include/linux/uaccess.h:13:0,
from arch/mips/kernel/mips-r2-to-r6-emul.c:32:
arch/mips/include/asm/uaccess.h:131:19: note: expected 'const void *' but argument is of type 'long unsigned int'
static inline int __access_ok(const void __user *p, unsigned long size)
^~~~~~~~~~~
In file included from arch/mips/include/asm/bug.h:4:0,
from include/linux/bug.h:4,
from arch/mips/kernel/mips-r2-to-r6-emul.c:13:
arch/mips/include/asm/uaccess.h:138:21: error: passing argument 1 of '__access_ok' makes pointer from integer without a cast [-Werror=int-conversion]
likely(__access_ok((addr), (size)))
^
include/linux/compiler.h:178:40: note: in definition of macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
^
arch/mips/kernel/mips-r2-to-r6-emul.c:1420:8: note: in expansion of macro 'access_ok'
if (!access_ok(VERIFY_WRITE, vaddr, 4)) {
^~~~~~~~~
In file included from include/linux/uaccess.h:13:0,
from arch/mips/kernel/mips-r2-to-r6-emul.c:32:
arch/mips/include/asm/uaccess.h:131:19: note: expected 'const void *' but argument is of type 'long unsigned int'
static inline int __access_ok(const void __user *p, unsigned long size)
^~~~~~~~~~~
In file included from arch/mips/include/asm/bug.h:4:0,
from include/linux/bug.h:4,
from arch/mips/kernel/mips-r2-to-r6-emul.c:13:
arch/mips/include/asm/uaccess.h:138:21: error: passing argument 1 of '__access_ok' makes pointer from integer without a cast [-Werror=int-conversion]
likely(__access_ok((addr), (size)))
^
include/linux/compiler.h:178:40: note: in definition of macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
^
arch/mips/kernel/mips-r2-to-r6-emul.c:1495:8: note: in expansion of macro 'access_ok'
if (!access_ok(VERIFY_READ, vaddr, 8)) {
^~~~~~~~~
In file included from include/linux/uaccess.h:13:0,
from arch/mips/kernel/mips-r2-to-r6-emul.c:32:
arch/mips/include/asm/uaccess.h:131:19: note: expected 'const void *' but argument is of type 'long unsigned int'
static inline int __access_ok(const void __user *p, unsigned long size)
^~~~~~~~~~~
In file included from arch/mips/include/asm/bug.h:4:0,
from include/linux/bug.h:4,
from arch/mips/kernel/mips-r2-to-r6-emul.c:13:
arch/mips/include/asm/uaccess.h:138:21: error: passing argument 1 of '__access_ok' makes pointer from integer without a cast [-Werror=int-conversion]
likely(__access_ok((addr), (size)))
^
include/linux/compiler.h:178:40: note: in definition of macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
^
arch/mips/kernel/mips-r2-to-r6-emul.c:1614:8: note: in expansion of macro 'access_ok'
if (!access_ok(VERIFY_READ, vaddr, 8)) {
^~~~~~~~~
In file included from include/linux/uaccess.h:13:0,
from arch/mips/kernel/mips-r2-to-r6-emul.c:32:
arch/mips/include/asm/uaccess.h:131:19: note: expected 'const void *' but argument is of type 'long unsigned int'
static inline int __access_ok(const void __user *p, unsigned long size)
^~~~~~~~~~~
In file included from arch/mips/include/asm/bug.h:4:0,
from include/linux/bug.h:4,
from arch/mips/kernel/mips-r2-to-r6-emul.c:13:
arch/mips/include/asm/uaccess.h:138:21: error: passing argument 1 of '__access_ok' makes pointer from integer without a cast [-Werror=int-conversion]
likely(__access_ok((addr), (size)))
^
include/linux/compiler.h:178:40: note: in definition of macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
vim +/access_ok +1203 arch/mips/kernel/mips-r2-to-r6-emul.c
b0a668fb Leonid Yegoshin 2014-12-03 1187 * But the sequence of multiple FPU instructions is much much
b0a668fb Leonid Yegoshin 2014-12-03 1188 * more often than LL-FPU-SC and I prefer loop here until
b0a668fb Leonid Yegoshin 2014-12-03 1189 * next scheduler cycle cancels FPU ownership
b0a668fb Leonid Yegoshin 2014-12-03 1190 */
b0a668fb Leonid Yegoshin 2014-12-03 1191 own_fpu(1); /* Restore FPU state. */
b0a668fb Leonid Yegoshin 2014-12-03 1192
b0a668fb Leonid Yegoshin 2014-12-03 1193 if (err)
b0a668fb Leonid Yegoshin 2014-12-03 1194 current->thread.cp0_baduaddr = (unsigned long)fault_addr;
b0a668fb Leonid Yegoshin 2014-12-03 1195
b0a668fb Leonid Yegoshin 2014-12-03 1196 MIPS_R2_STATS(fpus);
b0a668fb Leonid Yegoshin 2014-12-03 1197
b0a668fb Leonid Yegoshin 2014-12-03 1198 break;
b0a668fb Leonid Yegoshin 2014-12-03 1199
b0a668fb Leonid Yegoshin 2014-12-03 1200 case lwl_op:
b0a668fb Leonid Yegoshin 2014-12-03 1201 rt = regs->regs[MIPSInst_RT(inst)];
b0a668fb Leonid Yegoshin 2014-12-03 1202 vaddr = regs->regs[MIPSInst_RS(inst)] + MIPSInst_SIMM(inst);
b0a668fb Leonid Yegoshin 2014-12-03 @1203 if (!access_ok(VERIFY_READ, vaddr, 4)) {
b0a668fb Leonid Yegoshin 2014-12-03 1204 current->thread.cp0_baduaddr = vaddr;
b0a668fb Leonid Yegoshin 2014-12-03 1205 err = SIGSEGV;
b0a668fb Leonid Yegoshin 2014-12-03 1206 break;
b0a668fb Leonid Yegoshin 2014-12-03 1207 }
b0a668fb Leonid Yegoshin 2014-12-03 1208 __asm__ __volatile__(
b0a668fb Leonid Yegoshin 2014-12-03 1209 " .set push\n"
b0a668fb Leonid Yegoshin 2014-12-03 1210 " .set reorder\n"
b0a668fb Leonid Yegoshin 2014-12-03 1211 #ifdef CONFIG_CPU_LITTLE_ENDIAN
:::::: The code at line 1203 was first introduced by commit
:::::: b0a668fb2038d846a466c7a16a358d874002b697 MIPS: kernel: mips-r2-to-r6-emul: Add R2 emulator for MIPS R6
:::::: TO: Leonid Yegoshin <Leonid.Yegoshin@imgtec.com>
:::::: CC: Markos Chandras <markos.chandras@imgtec.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 14726 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-03-29 9:57 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-29 9:55 [vfs:uaccess.mips 9/14] arch/mips/kernel/mips-r2-to-r6-emul.c:1203:8: note: in expansion of macro 'access_ok' kbuild test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.