Build failure in -next due to 'hexagon: switch to RAW_COPY_USER'

From: Guenter Roeck
Date: Sun Apr 23 2017 - 20:35:56 EST


Hi,

hexagon:defconfig fails to build in -next with the following build error.


In file included from include/linux/uaccess.h:13:0,
from include/linux/poll.h:11,
from include/linux/ring_buffer.h:7,
from include/linux/trace_events.h:5,
from include/trace/syscall.h:6,
from include/linux/syscalls.h:82,
from init/main.c:20:
arch/hexagon/include/asm/uaccess.h: In function 'hexagon_strncpy_from_user':
arch/hexagon/include/asm/uaccess.h:100:3: error: implicit declaration of function 'copy_from_user' [-Werror=implicit-function-declaration]
In file included from include/linux/poll.h:11:0,
from include/linux/ring_buffer.h:7,
from include/linux/trace_events.h:5,
from include/trace/syscall.h:6,
from include/linux/syscalls.h:82,
from init/main.c:20:
include/linux/uaccess.h: At top level:
include/linux/uaccess.h:145:1: error: conflicting types for 'copy_from_user'
arch/hexagon/include/asm/uaccess.h:100:3: note: previous implicit declaration of 'copy_from_user' was here

Bisect points to 'hexagon: switch to RAW_COPY_USER. Bisect log is attached.

Guenter

---
# bad: [26e01a6fde2542bb020aa303787f8a57c49f5f37] Add linux-next specific files for 20170421
# good: [4f7d029b9bf009fbee76bb10c0c4351a1870d2f3] Linux 4.11-rc7
git bisect start 'HEAD' 'v4.11-rc7'
# bad: [6ab7468a254dabc88e73476b8fe9fee6d63041e1] Merge remote-tracking branch 'crypto/master'
git bisect bad 6ab7468a254dabc88e73476b8fe9fee6d63041e1
# bad: [140ff2fd79c3861f55628d9f9301dcf636f48371] Merge remote-tracking branch 'jc_docs/docs-next'
git bisect bad 140ff2fd79c3861f55628d9f9301dcf636f48371
# good: [972acb605b68d29d0914df41e75c1e549fb4dd4a] Merge remote-tracking branch 'arm64/for-next/core'
git bisect good 972acb605b68d29d0914df41e75c1e549fb4dd4a
# good: [dea37da5bb4803b7de2f1498d14f07444ca1adf3] Merge remote-tracking branch 'jfs/jfs-next'
git bisect good dea37da5bb4803b7de2f1498d14f07444ca1adf3
# bad: [f06a6bdb92e219efc51cdc36712596d713a1e8d4] Merge remote-tracking branch 'pci/next'
git bisect bad f06a6bdb92e219efc51cdc36712596d713a1e8d4
# bad: [ef9daebd5027ace3669892d99536ca282af6fd54] Merge remote-tracking branch 'vfs/for-next'
git bisect bad ef9daebd5027ace3669892d99536ca282af6fd54
# bad: [4b084aa64f64240819024f5c2b392cadbf425a9e] CONFIG_ARCH_HAS_RAW_COPY_USER is unconditional now
git bisect bad 4b084aa64f64240819024f5c2b392cadbf425a9e
# good: [ec022681a4201006a5bcb1a01401591a326b659c] alpha: switch to RAW_COPY_USER
git bisect good ec022681a4201006a5bcb1a01401591a326b659c
# good: [2260ea86c0e7623d4e99886638b2b83ef21efa60] mips: switch to RAW_COPY_USER
git bisect good 2260ea86c0e7623d4e99886638b2b83ef21efa60
# good: [b3622d3217eb351717b157d64ce0895e662b7657] get rid of padding, switch to RAW_COPY_USER
git bisect good b3622d3217eb351717b157d64ce0895e662b7657
# good: [0c7e9a870eb2a5db03780d7d3f83d0df7623a9c7] cris: switch to RAW_COPY_USER
git bisect good 0c7e9a870eb2a5db03780d7d3f83d0df7623a9c7
# good: [beba3a20bf90ce1b93e24592c3ebf0d0bb581bbe] x86: switch to RAW_COPY_USER
git bisect good beba3a20bf90ce1b93e24592c3ebf0d0bb581bbe
# good: [840db3f93849830c4a55c795ddd6057ad40d4f2d] metag/usercopy: Switch to RAW_COPY_USER
git bisect good 840db3f93849830c4a55c795ddd6057ad40d4f2d
# good: [29be02eb6fef5f26332eb3e13ead868cff0910af] m68k: switch to RAW_COPY_USER
git bisect good 29be02eb6fef5f26332eb3e13ead868cff0910af
# good: [19dbf70c5acce91c6cacfd0983c2b062644fa7a4] mn10300: switch to RAW_COPY_USER
git bisect good 19dbf70c5acce91c6cacfd0983c2b062644fa7a4
# good: [dc1425352325bf8a56f5d8ecd1258671808bcadd] score: switch to RAW_COPY_USER
git bisect good dc1425352325bf8a56f5d8ecd1258671808bcadd
# good: [59e74c0748033e6468cf62871330fa5b184b5ec6] m32r: switch to RAW_COPY_USER
git bisect good 59e74c0748033e6468cf62871330fa5b184b5ec6
# good: [e13909a4acc4b68b30527d8442d4267658963757] ARC: uaccess: enable INLINE_COPY_{TO,FROM}_USER ...
git bisect good e13909a4acc4b68b30527d8442d4267658963757
# good: [7d4914db8fda6d38d92b1b8a740bafbd6c6d89a1] xtensa: fix prefetch in the raw_copy_to_user
git bisect good 7d4914db8fda6d38d92b1b8a740bafbd6c6d89a1
# good: [bf7af0cea8a7980269ee1762f336cccb7b7e813e] esas2r: don't open-code memdup_user()
git bisect good bf7af0cea8a7980269ee1762f336cccb7b7e813e
# good: [3448890c32c32c482c3ec20baa8fdd2ab4f94cc0] powerpc: get rid of zeroing, switch to RAW_COPY_USER
git bisect good 3448890c32c32c482c3ec20baa8fdd2ab4f94cc0
# good: [4de5b63e76b2e672478e49622dabe2666b7f727f] arm: switch to RAW_COPY_USER
git bisect good 4de5b63e76b2e672478e49622dabe2666b7f727f
# good: [92430dab364019babd4122fef22441ef20bdb39b] arm64: switch to RAW_COPY_USER
git bisect good 92430dab364019babd4122fef22441ef20bdb39b
# good: [e5c1540030a0e2da0c46b3da91ed3ceafd0e4368] avr32: switch to RAW_COPY_USER
git bisect good e5c1540030a0e2da0c46b3da91ed3ceafd0e4368
# good: [50e9ab915a79b3f51f6de8ef9bbdae8279e8fa46] bfin: switch to RAW_COPY_USER
git bisect good 50e9ab915a79b3f51f6de8ef9bbdae8279e8fa46
# good: [86944ee1581f4be6af0126e80877b8069e177739] c6x: switch to RAW_COPY_USER
git bisect good 86944ee1581f4be6af0126e80877b8069e177739
# good: [48f666c986671ea2021971bfbe4d74a7ebcf0a44] frv: switch to RAW_COPY_USER
git bisect good 48f666c986671ea2021971bfbe4d74a7ebcf0a44
# good: [de51d6cc2cf9daa9b5155faefb714f5b477cf160] nios2: switch to RAW_COPY_USER
git bisect good de51d6cc2cf9daa9b5155faefb714f5b477cf160
# good: [ab89866be3a02008880719f8928ff4fd960f99b6] openrisc: switch to RAW_COPY_USER
git bisect good ab89866be3a02008880719f8928ff4fd960f99b6
# good: [f98f48ee7cd473a077f8500dbf3d0a1f9af73003] sh: switch to RAW_COPY_USER
git bisect good f98f48ee7cd473a077f8500dbf3d0a1f9af73003
# good: [23504bae7f3edd1484c4d470362f2b12bcd298f9] tile: get rid of zeroing, switch to RAW_COPY_USER
git bisect good 23504bae7f3edd1484c4d470362f2b12bcd298f9
# good: [37096003c8a7de5d24c6cf86234004c635fdd617] s390: get rid of zeroing, switch to RAW_COPY_USER
git bisect good 37096003c8a7de5d24c6cf86234004c635fdd617
# good: [f64fd180ec2c0bcca2a141314db3b5d3b6bfef2f] parisc: switch to RAW_COPY_USER
git bisect good f64fd180ec2c0bcca2a141314db3b5d3b6bfef2f
# good: [31af2f36d50e3b9b2fb7f17aa430c11c91f946c4] sparc: switch to RAW_COPY_USER
git bisect good 31af2f36d50e3b9b2fb7f17aa430c11c91f946c4
# good: [d491afb8654e84f972ed00cb0e087ad2fae5a1ac] microblaze: switch to RAW_COPY_USER
git bisect good d491afb8654e84f972ed00cb0e087ad2fae5a1ac
# good: [33ab2da801debd947bf0f36848d2b9ea20fad835] 8300: switch to RAW_COPY_USER
git bisect good 33ab2da801debd947bf0f36848d2b9ea20fad835
# bad: [df56acb13a5fafa3bfeb1a129250a9aef34714b6] hexagon: switch to RAW_COPY_USER
git bisect bad df56acb13a5fafa3bfeb1a129250a9aef34714b6
# first bad commit: [df56acb13a5fafa3bfeb1a129250a9aef34714b6] hexagon: switch to RAW_COPY_USER