[sashal-linux-stable:queue-5.4 156/259] /tmp/intercept-072333.s:1064: Error: bad expression
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: 42c9cd31a6c26bde1bab80797c611d34d552757b
commit: db60c0749d952f8002b952167e6a5159d4c77452 [156/259] selftests/bpf, flow_dissector: Close TAP device FD after the test
config: s390-randconfig-r004-20200621 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project ef455a55bcf2cfea04a99c361b182ad18b7f03f1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install s390 cross compiling tool for clang build
# apt-get install binutils-s390-linux-gnu
git checkout db60c0749d952f8002b952167e6a5159d4c77452
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/if_ether.h:19:
In file included from include/linux/skbuff.h:31:
In file included from include/linux/dma-mapping.h:11:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:21:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0x00ff0000UL) >> 8) | \
^
In file included from arch/s390/kvm/intercept.c:11:
In file included from include/linux/kvm_host.h:32:
In file included from include/linux/kvm_para.h:5:
In file included from include/uapi/linux/kvm_para.h:36:
In file included from arch/s390/include/asm/kvm_para.h:25:
In file included from arch/s390/include/asm/diag.h:12:
In file included from include/linux/if_ether.h:19:
In file included from include/linux/skbuff.h:31:
In file included from include/linux/dma-mapping.h:11:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:22:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0xff000000UL) >> 24)))
^
In file included from arch/s390/kvm/intercept.c:11:
In file included from include/linux/kvm_host.h:32:
In file included from include/linux/kvm_para.h:5:
In file included from include/uapi/linux/kvm_para.h:36:
In file included from arch/s390/include/asm/kvm_para.h:25:
In file included from arch/s390/include/asm/diag.h:12:
In file included from include/linux/if_ether.h:19:
In file included from include/linux/skbuff.h:31:
In file included from include/linux/dma-mapping.h:11:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:120:12: note: expanded from macro '__swab32'
__fswab32(x))
^
In file included from arch/s390/kvm/intercept.c:11:
In file included from include/linux/kvm_host.h:32:
In file included from include/linux/kvm_para.h:5:
In file included from include/uapi/linux/kvm_para.h:36:
In file included from arch/s390/include/asm/kvm_para.h:25:
In file included from arch/s390/include/asm/diag.h:12:
In file included from include/linux/if_ether.h:19:
In file included from include/linux/skbuff.h:31:
In file included from include/linux/dma-mapping.h:11:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:503:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writeb(value, PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:513:46: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew(cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:523:46: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel(cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:585:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:593:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:601:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:610:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:619:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:628:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
20 warnings generated.
/tmp/intercept-072333.s: Assembler messages:
>> /tmp/intercept-072333.s:1064: Error: bad expression
>> /tmp/intercept-072333.s:1064: Error: junk at end of line, first unrecognized character is `r'
/tmp/intercept-072333.s:5172: Error: bad expression
/tmp/intercept-072333.s:5172: Error: junk at end of line, first unrecognized character is `r'
/tmp/intercept-072333.s:5703: Error: bad expression
/tmp/intercept-072333.s:5703: Error: junk at end of line, first unrecognized character is `r'
/tmp/intercept-072333.s:6223: Error: bad expression
/tmp/intercept-072333.s:6223: Error: junk at end of line, first unrecognized character is `r'
/tmp/intercept-072333.s:6743: Error: bad expression
/tmp/intercept-072333.s:6743: Error: junk at end of line, first unrecognized character is `r'
/tmp/intercept-072333.s:7262: Error: bad expression
/tmp/intercept-072333.s:7262: Error: junk at end of line, first unrecognized character is `r'
clang-11: error: assembler command failed with exit code 1 (use -v to see invocation)
--
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:20:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0x0000ff00UL) << 8) | \
^
In file included from fs/pipe.c:26:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:21:
In file included from include/linux/blkdev.h:28:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:21:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0x00ff0000UL) >> 8) | \
^
In file included from fs/pipe.c:26:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:21:
In file included from include/linux/blkdev.h:28:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:22:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0xff000000UL) >> 24)))
^
In file included from fs/pipe.c:26:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:21:
In file included from include/linux/blkdev.h:28:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:120:12: note: expanded from macro '__swab32'
__fswab32(x))
^
In file included from fs/pipe.c:26:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:21:
In file included from include/linux/blkdev.h:28:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:503:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writeb(value, PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:513:46: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew(cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:523:46: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel(cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:585:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:593:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:601:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:610:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:619:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:628:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
20 warnings generated.
/tmp/pipe-329242.s: Assembler messages:
>> /tmp/pipe-329242.s:964: Error: bad expression
>> /tmp/pipe-329242.s:964: Error: junk at end of line, first unrecognized character is `r'
/tmp/pipe-329242.s:1160: Error: bad expression
/tmp/pipe-329242.s:1160: Error: junk at end of line, first unrecognized character is `r'
/tmp/pipe-329242.s:8661: Error: bad expression
/tmp/pipe-329242.s:8661: Error: junk at end of line, first unrecognized character is `r'
clang-11: error: assembler command failed with exit code 1 (use -v to see invocation)
--
In file included from drivers/media/common/videobuf2/videobuf2-core.c:29:
In file included from include/media/videobuf2-core.h:18:
In file included from include/linux/dma-buf.h:18:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:20:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0x0000ff00UL) << 8) | \
^
In file included from drivers/media/common/videobuf2/videobuf2-core.c:29:
In file included from include/media/videobuf2-core.h:18:
In file included from include/linux/dma-buf.h:18:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:21:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0x00ff0000UL) >> 8) | \
^
In file included from drivers/media/common/videobuf2/videobuf2-core.c:29:
In file included from include/media/videobuf2-core.h:18:
In file included from include/linux/dma-buf.h:18:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:22:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0xff000000UL) >> 24)))
^
In file included from drivers/media/common/videobuf2/videobuf2-core.c:29:
In file included from include/media/videobuf2-core.h:18:
In file included from include/linux/dma-buf.h:18:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:492:45: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu(__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:120:12: note: expanded from macro '__swab32'
__fswab32(x))
^
In file included from drivers/media/common/videobuf2/videobuf2-core.c:29:
In file included from include/media/videobuf2-core.h:18:
In file included from include/linux/dma-buf.h:18:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:76:
include/asm-generic/io.h:503:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writeb(value, PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:513:46: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew(cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:523:46: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel(cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:585:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:593:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:601:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:610:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:619:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:628:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
20 warnings generated.
/tmp/videobuf2-core-361792.s: Assembler messages:
/tmp/videobuf2-core-361792.s:8083: Error: bad expression
>> /tmp/videobuf2-core-361792.s:8083: Error: junk at end of line, first unrecognized character is `r'
/tmp/videobuf2-core-361792.s:17076: Error: bad expression
/tmp/videobuf2-core-361792.s:17076: Error: junk at end of line, first unrecognized character is `r'
/tmp/videobuf2-core-361792.s:20341: Error: bad expression
/tmp/videobuf2-core-361792.s:20341: Error: junk at end of line, first unrecognized character is `r'
/tmp/videobuf2-core-361792.s:29841: Error: bad expression
/tmp/videobuf2-core-361792.s:29841: Error: junk at end of line, first unrecognized character is `r'
clang-11: error: assembler command failed with exit code 1 (use -v to see invocation)
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[slave-dma:next 6/6] ld.lld: error: failed to open drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.o: Cannot allocate memory
by kernel test robot
TO: Dave Jiang <dave.jiang(a)intel.com>
CC: Vinod Koul <vkoul(a)kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/vkoul/slave-dma.git next
head: 47ec7f09bc107720905c96bc37771e4ed1ff0aed
commit: 47ec7f09bc107720905c96bc37771e4ed1ff0aed [6/6] dmaengine: cookie bypass for out of order completion
config: x86_64-allmodconfig (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project ef455a55bcf2cfea04a99c361b182ad18b7f03f1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git checkout 47ec7f09bc107720905c96bc37771e4ed1ff0aed
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
terminate called after throwing an instance of 'std::system_error'
what(): Resource temporarily unavailable
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
>> ld.lld: error: failed to open drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.o: Cannot allocate memory
#0 0x0000562f0fba1d5a llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/opt/cross/clang-ef455a55bc/bin/lld+0x8cad5a)
#1 0x0000562f0fb9fc65 llvm::sys::RunSignalHandlers() (/opt/cross/clang-ef455a55bc/bin/lld+0x8c8c65)
#2 0x0000562f0fb9fd82 SignalHandler(int) (/opt/cross/clang-ef455a55bc/bin/lld+0x8c8d82)
#3 0x00007f62b9979730 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12730)
#4 0x00007f62b94ab7bb raise (/lib/x86_64-linux-gnu/libc.so.6+0x377bb)
#5 0x00007f62b9496535 abort (/lib/x86_64-linux-gnu/libc.so.6+0x22535)
#6 0x00007f62b9860983 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x8c983)
#7 0x00007f62b98668c6 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x928c6)
#8 0x00007f62b9866901 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x92901)
#9 0x00007f62b9866b34 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x92b34)
#10 0x00007f62b9862a55 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x8ea55)
#11 0x00007f62b988fdc9 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xbbdc9)
#12 0x0000562f124c3b34 std::thread::_State_impl<std::_Bind_simple<llvm::parallel::detail::(anonymous namespace)::ThreadPoolExecutor::ThreadPoolExecutor(llvm::ThreadPoolStrategy)::'lambda'() ()> >::_M_run() (/opt/cross/clang-ef455a55bc/bin/lld+0x31ecb34)
#13 0x00007f62b988fb2f (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xbbb2f)
#14 0x00007f62b996efa3 start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x7fa3)
#15 0x00007f62b956d4cf clone (/lib/x86_64-linux-gnu/libc.so.6+0xf94cf)
/bin/bash: line 1: 9553 Aborted ld.lld -m elf_x86_64 -z max-page-size=0x200000 -r -o drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.o drivers/net/ethernet/mellanox/mlx5/core/main.o drivers/net/ethernet/mellanox/mlx5/core/cmd.o drivers/net/ethernet/mellanox/mlx5/core/debugfs.o drivers/net/ethernet/mellanox/mlx5/core/fw.o drivers/net/ethernet/mellanox/mlx5/core/eq.o drivers/net/ethernet/mellanox/mlx5/core/uar.o drivers/net/ethernet/mellanox/mlx5/core/pagealloc.o drivers/net/ethernet/mellanox/mlx5/core/health.o drivers/net/ethernet/mellanox/mlx5/core/mcg.o drivers/net/ethernet/mellanox/mlx5/core/cq.o drivers/net/ethernet/mellanox/mlx5/core/alloc.o drivers/net/ethernet/mellanox/mlx5/core/port.o drivers/net/ethernet/mellanox/mlx5/core/mr.o drivers/net/ethernet/mellanox/mlx5/core/pd.o drivers/net/ethernet/mellanox/mlx5/core/transobj.o drivers/net/ethernet/mellanox/mlx5/core/vport.o drivers/net/ethernet/mellanox/mlx5/core/sriov.o drivers/net/ethernet/mellanox/mlx5/core/fs_cmd.o drivers/net/ethernet/mellanox/mlx5/core/fs_core.o drivers/net/ethernet/mellanox/mlx5/core/pci_irq.o drivers/net/ethernet/mellanox/mlx5/core/fs_counters.o drivers/net/ethernet/mellanox/mlx5/core/rl.o drivers/net/ethernet/mellanox/mlx5/core/lag.o drivers/net/ethernet/mellanox/mlx5/core/dev.o drivers/net/ethernet/mellanox/mlx5/core/events.o drivers/net/ethernet/mellanox/mlx5/core/wq.o drivers/net/ethernet/mellanox/mlx5/core/lib/gid.o drivers/net/ethernet/mellanox/mlx5/core/lib/devcom.o drivers/net/ethernet/mellanox/mlx5/core/lib/pci_vsc.o drivers/net/ethernet/mellanox/mlx5/core/lib/dm.o drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.o drivers/net/ethernet/mellanox/mlx5/core/diag/fw_tracer.o drivers/net/ethernet/mellanox/mlx5/core/diag/crdump.o drivers/net/ethernet/mellanox/mlx5/core/devlink.o drivers/net/ethernet/mellanox/mlx5/core/diag/rsc_dump.o drivers/net/ethernet/mellanox/mlx5/core/en_main.o drivers/net/ethernet/mellanox/mlx5/core/en_common.o drivers/net/ethernet/mellanox/mlx5/core/en_fs.o drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.o drivers/net/ethernet/mellanox/mlx5/core/en_tx.o drivers/net/ethernet/mellanox/mlx5/core/en_rx.o drivers/net/ethernet/mellanox/mlx5/core/en_dim.o drivers/net/ethernet/mellanox/mlx5/core/en_txrx.o drivers/net/ethernet/mellanox/mlx5/core/en/xdp.o drivers/net/ethernet/mellanox/mlx5/core/en_stats.o drivers/net/ethernet/mellanox/mlx5/core/en_selftest.o drivers/net/ethernet/mellanox/mlx5/core/en/port.o drivers/net/ethernet/mellanox/mlx5/core/en/monitor_stats.o drivers/net/ethernet/mellanox/mlx5/core/en/health.o drivers/net/ethernet/mellanox/mlx5/core/en/reporter_tx.o drivers/net/ethernet/mellanox/mlx5/core/en/reporter_rx.o drivers/net/ethernet/mellanox/mlx5/core/en/params.o drivers/net/ethernet/mellanox/mlx5/core/en/xsk/umem.o drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.o drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.o drivers/net/ethernet/mellanox/mlx5/core/en/xsk/tx.o drivers/net/ethernet/mellanox/mlx5/core/en/devlink.o drivers/net/ethernet/mellanox/mlx5/core/en_arfs.o drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.o drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.o drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.o drivers/net/ethernet/mellanox/mlx5/core/lag_mp.o drivers/net/ethernet/mellanox/mlx5/core/lib/geneve.o drivers/net/ethernet/mellanox/mlx5/core/lib/port_tun.o drivers/net/ethernet/mellanox/mlx5/core/en_rep.o drivers/net/ethernet/mellanox/mlx5/core/en/rep/bond.o drivers/net/ethernet/mellanox/mlx5/core/en_tc.o drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.o drivers/net/ethernet/mellanox/mlx5/core/en/rep/neigh.o drivers/net/ethernet/mellanox/mlx5/core/en/mapping.o drivers/net/ethernet/mellanox/mlx5/core/esw/chains.o drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.o drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.o drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_gre.o drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.o drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_mplsoudp.o drivers/net/ethernet/mellanox/mlx5/core/diag/en_tc_tracepoint.o drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.o drivers/net/ethernet/mellanox/mlx5/core/eswitch.o drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.o drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.o drivers/net/ethernet/mellanox/mlx5/core/ecpf.o drivers/net/ethernet/mellanox/mlx5/core/rdma.o drivers/net/ethernet/mellanox/mlx5/core/esw/acl/helper.o drivers/net/ethernet/mellanox/mlx5/core/esw/acl/egress_lgcy.o drivers/net/ethernet/mellanox/mlx5/core/esw/acl/egress_ofld.o drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ingress_lgcy.o drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ingress_ofld.o drivers/net/ethernet/mellanox/mlx5/core/lib/mpfs.o drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.o drivers/net/ethernet/mellanox/mlx5/core/ipoib/ethtool.o drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib_vlan.o drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.o drivers/net/ethernet/mellanox/mlx5/core/fpga/tls.o drivers/net/ethernet/mellanox/mlx5/core/lib/crypto.o drivers/net/ethernet/mellanox/mlx5/core/accel/tls.o drivers/net/ethernet/mellanox/mlx5/core/accel/ipsec.o drivers/net/ethernet/mellanox/mlx5/core/fpga/cmd.o drivers/net/ethernet/mellanox/mlx5/core/fpga/core.o drivers/net/ethernet/mellanox/mlx5/core/fpga/conn.o drivers/net/ethernet/mellanox/mlx5/core/fpga/sdk.o drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.o drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_rxtx.o drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_stats.o drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.o drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_rxtx.o drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls_stats.o drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls.o drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_domain.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_matcher.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_icm_pool.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_ste.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_send.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_fw.o drivers/net/ethernet/mellanox/mlx5/core/steering/dr_action.o drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.o drivers/net/ethernet/mellanox/mlx5/core/en/hv_vhca_stats.o drivers/net/ethernet/mellanox/mlx5/core/lib/vxlan.o drivers/net/ethernet/mellanox/mlx5/core/lib/clock.o drivers/net/ethernet/mellanox/mlx5/core/lib/hv.o drivers/net/ethernet/mellanox/mlx5/core/lib/hv_vhca.o
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[ipmi:ipmi-wdt-rework 6/14] drivers/hwmon/fschmd.c:697:12: error: conflicting types for 'watchdog_set_timeout'
by kernel test robot
tree: https://github.com/cminyard/linux-ipmi ipmi-wdt-rework
head: e25cca1514b717a229931e182000c21bb5a74db3
commit: 8fbe2d52d47664f9391872afdea91875734d49fc [6/14] watchdog: Add functions to set the timeout and pretimeout
config: i386-randconfig-r001-20200621 (attached as .config)
compiler: gcc-6 (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
reproduce (this is a W=1 build):
git checkout 8fbe2d52d47664f9391872afdea91875734d49fc
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/hwmon/fschmd.c:697:12: error: conflicting types for 'watchdog_set_timeout'
static int watchdog_set_timeout(struct fschmd_data *data, int timeout)
^~~~~~~~~~~~~~~~~~~~
In file included from drivers/hwmon/fschmd.c:34:0:
include/linux/watchdog.h:205:5: note: previous declaration of 'watchdog_set_timeout' was here
int watchdog_set_timeout(struct watchdog_device *wdd, unsigned int timeout);
^~~~~~~~~~~~~~~~~~~~
vim +/watchdog_set_timeout +697 drivers/hwmon/fschmd.c
569ff1022662a8 Hans de Goede 2007-10-11 691
569ff1022662a8 Hans de Goede 2007-10-11 692
569ff1022662a8 Hans de Goede 2007-10-11 693 /*
97950c3d423e47 Hans de Goede 2009-01-07 694 * Watchdog routines
97950c3d423e47 Hans de Goede 2009-01-07 695 */
97950c3d423e47 Hans de Goede 2009-01-07 696
97950c3d423e47 Hans de Goede 2009-01-07 @697 static int watchdog_set_timeout(struct fschmd_data *data, int timeout)
97950c3d423e47 Hans de Goede 2009-01-07 698 {
97950c3d423e47 Hans de Goede 2009-01-07 699 int ret, resolution;
97950c3d423e47 Hans de Goede 2009-01-07 700 int kind = data->kind + 1; /* 0-x array index -> 1-x module param */
97950c3d423e47 Hans de Goede 2009-01-07 701
97950c3d423e47 Hans de Goede 2009-01-07 702 /* 2 second or 60 second resolution? */
97950c3d423e47 Hans de Goede 2009-01-07 703 if (timeout <= 510 || kind == fscpos || kind == fscscy)
97950c3d423e47 Hans de Goede 2009-01-07 704 resolution = 2;
97950c3d423e47 Hans de Goede 2009-01-07 705 else
97950c3d423e47 Hans de Goede 2009-01-07 706 resolution = 60;
97950c3d423e47 Hans de Goede 2009-01-07 707
97950c3d423e47 Hans de Goede 2009-01-07 708 if (timeout < resolution || timeout > (resolution * 255))
97950c3d423e47 Hans de Goede 2009-01-07 709 return -EINVAL;
97950c3d423e47 Hans de Goede 2009-01-07 710
97950c3d423e47 Hans de Goede 2009-01-07 711 mutex_lock(&data->watchdog_lock);
97950c3d423e47 Hans de Goede 2009-01-07 712 if (!data->client) {
97950c3d423e47 Hans de Goede 2009-01-07 713 ret = -ENODEV;
97950c3d423e47 Hans de Goede 2009-01-07 714 goto leave;
97950c3d423e47 Hans de Goede 2009-01-07 715 }
97950c3d423e47 Hans de Goede 2009-01-07 716
97950c3d423e47 Hans de Goede 2009-01-07 717 if (resolution == 2)
97950c3d423e47 Hans de Goede 2009-01-07 718 data->watchdog_control &= ~FSCHMD_WDOG_CONTROL_RESOLUTION;
97950c3d423e47 Hans de Goede 2009-01-07 719 else
97950c3d423e47 Hans de Goede 2009-01-07 720 data->watchdog_control |= FSCHMD_WDOG_CONTROL_RESOLUTION;
97950c3d423e47 Hans de Goede 2009-01-07 721
97950c3d423e47 Hans de Goede 2009-01-07 722 data->watchdog_preset = DIV_ROUND_UP(timeout, resolution);
97950c3d423e47 Hans de Goede 2009-01-07 723
97950c3d423e47 Hans de Goede 2009-01-07 724 /* Write new timeout value */
c69ab2b78efbe3 Hans de Goede 2009-03-30 725 i2c_smbus_write_byte_data(data->client,
c69ab2b78efbe3 Hans de Goede 2009-03-30 726 FSCHMD_REG_WDOG_PRESET[data->kind], data->watchdog_preset);
97950c3d423e47 Hans de Goede 2009-01-07 727 /* Write new control register, do not trigger! */
c69ab2b78efbe3 Hans de Goede 2009-03-30 728 i2c_smbus_write_byte_data(data->client,
c69ab2b78efbe3 Hans de Goede 2009-03-30 729 FSCHMD_REG_WDOG_CONTROL[data->kind],
97950c3d423e47 Hans de Goede 2009-01-07 730 data->watchdog_control & ~FSCHMD_WDOG_CONTROL_TRIGGER);
97950c3d423e47 Hans de Goede 2009-01-07 731
97950c3d423e47 Hans de Goede 2009-01-07 732 ret = data->watchdog_preset * resolution;
97950c3d423e47 Hans de Goede 2009-01-07 733
97950c3d423e47 Hans de Goede 2009-01-07 734 leave:
97950c3d423e47 Hans de Goede 2009-01-07 735 mutex_unlock(&data->watchdog_lock);
97950c3d423e47 Hans de Goede 2009-01-07 736 return ret;
97950c3d423e47 Hans de Goede 2009-01-07 737 }
97950c3d423e47 Hans de Goede 2009-01-07 738
:::::: The code at line 697 was first introduced by commit
:::::: 97950c3d423e474ef887749b238ee67731b532fe hwmon: (fschmd) Add watchdog support
:::::: TO: Hans de Goede <hdegoede(a)redhat.com>
:::::: CC: Jean Delvare <khali(a)linux-fr.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[lunn:v5.8-rc1-net-next-phy-subdirs 2/3] drivers/net/phy/mdio/mdio-cavium.h:114:31: note: in expansion of macro 'readq'
by kernel test robot
tree: https://github.com/lunn/linux.git v5.8-rc1-net-next-phy-subdirs
head: 6758dc32213e56e6ddd16049bc0cf1e1a36ce270
commit: 55b85b0b27e41f822363c40083b44daae8b2e5dd [2/3] net: phy: Move into subdirectories
config: sh-allmodconfig (attached as .config)
compiler: sh4-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 55b85b0b27e41f822363c40083b44daae8b2e5dd
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=sh
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
In file included from arch/sh/include/asm/io.h:28,
from include/linux/scatterlist.h:9,
from include/linux/dma-mapping.h:11,
from include/linux/skbuff.h:31,
from include/linux/if_ether.h:19,
from include/uapi/linux/ethtool.h:19,
from include/linux/ethtool.h:18,
from include/linux/phy.h:16,
from drivers/net/phy/mdio/mdio-cavium.c:8:
drivers/net/phy/mdio/mdio-cavium.c: In function 'cavium_mdiobus_set_mode':
drivers/net/phy/mdio/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^
arch/sh/include/mach-common/mach/mangle-port.h:41:23: note: in definition of macro 'ioswabq'
41 | # define ioswabq(x) (x)
| ^
arch/sh/include/asm/io.h:43:47: note: in expansion of macro '__raw_readq'
43 | #define readq_relaxed(c) ({ u64 __v = ioswabq(__raw_readq(c)); __v; })
| ^~~~~~~~~~~
arch/sh/include/asm/io.h:53:31: note: in expansion of macro 'readq_relaxed'
53 | #define readq(a) ({ u64 r_ = readq_relaxed(a); rmb(); r_; })
| ^~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:114:31: note: in expansion of macro 'readq'
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^~~~~
drivers/net/phy/mdio/mdio-cavium.c:21:16: note: in expansion of macro 'oct_mdio_readq'
21 | smi_clk.u64 = oct_mdio_readq(p->register_base + SMI_CLK);
| ^~~~~~~~~~~~~~
In file included from include/linux/scatterlist.h:9,
from include/linux/dma-mapping.h:11,
from include/linux/skbuff.h:31,
from include/linux/if_ether.h:19,
from include/uapi/linux/ethtool.h:19,
from include/linux/ethtool.h:18,
from include/linux/phy.h:16,
from drivers/net/phy/mdio/mdio-cavium.c:8:
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-cavium.c:24:2: note: in expansion of macro 'oct_mdio_writeq'
24 | oct_mdio_writeq(smi_clk.u64, p->register_base + SMI_CLK);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio/mdio-cavium.c: In function 'cavium_mdiobus_c45_addr':
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-cavium.c:39:2: note: in expansion of macro 'oct_mdio_writeq'
39 | oct_mdio_writeq(smi_wr.u64, p->register_base + SMI_WR_DAT);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-cavium.c:47:2: note: in expansion of macro 'oct_mdio_writeq'
47 | oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD);
| ^~~~~~~~~~~~~~~
In file included from arch/sh/include/asm/io.h:28,
from include/linux/scatterlist.h:9,
from include/linux/dma-mapping.h:11,
from include/linux/skbuff.h:31,
from include/linux/if_ether.h:19,
from include/uapi/linux/ethtool.h:19,
from include/linux/ethtool.h:18,
from include/linux/phy.h:16,
from drivers/net/phy/mdio/mdio-cavium.c:8:
drivers/net/phy/mdio/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^
arch/sh/include/mach-common/mach/mangle-port.h:41:23: note: in definition of macro 'ioswabq'
41 | # define ioswabq(x) (x)
| ^
arch/sh/include/asm/io.h:43:47: note: in expansion of macro '__raw_readq'
43 | #define readq_relaxed(c) ({ u64 __v = ioswabq(__raw_readq(c)); __v; })
| ^~~~~~~~~~~
arch/sh/include/asm/io.h:53:31: note: in expansion of macro 'readq_relaxed'
53 | #define readq(a) ({ u64 r_ = readq_relaxed(a); rmb(); r_; })
| ^~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:114:31: note: in expansion of macro 'readq'
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^~~~~
drivers/net/phy/mdio/mdio-cavium.c:54:16: note: in expansion of macro 'oct_mdio_readq'
54 | smi_wr.u64 = oct_mdio_readq(p->register_base + SMI_WR_DAT);
| ^~~~~~~~~~~~~~
In file included from include/linux/scatterlist.h:9,
from include/linux/dma-mapping.h:11,
from include/linux/skbuff.h:31,
from include/linux/if_ether.h:19,
from include/uapi/linux/ethtool.h:19,
from include/linux/ethtool.h:18,
from include/linux/phy.h:16,
from drivers/net/phy/mdio/mdio-cavium.c:8:
drivers/net/phy/mdio/mdio-cavium.c: In function 'cavium_mdiobus_read':
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-cavium.c:86:2: note: in expansion of macro 'oct_mdio_writeq'
86 | oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD);
| ^~~~~~~~~~~~~~~
In file included from arch/sh/include/asm/io.h:28,
from include/linux/scatterlist.h:9,
from include/linux/dma-mapping.h:11,
from include/linux/skbuff.h:31,
from include/linux/if_ether.h:19,
from include/uapi/linux/ethtool.h:19,
from include/linux/ethtool.h:18,
from include/linux/phy.h:16,
from drivers/net/phy/mdio/mdio-cavium.c:8:
drivers/net/phy/mdio/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^
arch/sh/include/mach-common/mach/mangle-port.h:41:23: note: in definition of macro 'ioswabq'
41 | # define ioswabq(x) (x)
| ^
arch/sh/include/asm/io.h:43:47: note: in expansion of macro '__raw_readq'
43 | #define readq_relaxed(c) ({ u64 __v = ioswabq(__raw_readq(c)); __v; })
| ^~~~~~~~~~~
arch/sh/include/asm/io.h:53:31: note: in expansion of macro 'readq_relaxed'
53 | #define readq(a) ({ u64 r_ = readq_relaxed(a); rmb(); r_; })
| ^~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:114:31: note: in expansion of macro 'readq'
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^~~~~
drivers/net/phy/mdio/mdio-cavium.c:93:16: note: in expansion of macro 'oct_mdio_readq'
93 | smi_rd.u64 = oct_mdio_readq(p->register_base + SMI_RD_DAT);
| ^~~~~~~~~~~~~~
In file included from include/linux/scatterlist.h:9,
from include/linux/dma-mapping.h:11,
from include/linux/skbuff.h:31,
from include/linux/if_ether.h:19,
from include/uapi/linux/ethtool.h:19,
from include/linux/ethtool.h:18,
from include/linux/phy.h:16,
from drivers/net/phy/mdio/mdio-cavium.c:8:
drivers/net/phy/mdio/mdio-cavium.c: In function 'cavium_mdiobus_write':
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-cavium.c:125:2: note: in expansion of macro 'oct_mdio_writeq'
125 | oct_mdio_writeq(smi_wr.u64, p->register_base + SMI_WR_DAT);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-cavium.c:131:2: note: in expansion of macro 'oct_mdio_writeq'
131 | oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD);
| ^~~~~~~~~~~~~~~
In file included from arch/sh/include/asm/io.h:28,
from include/linux/scatterlist.h:9,
from include/linux/dma-mapping.h:11,
from include/linux/skbuff.h:31,
from include/linux/if_ether.h:19,
from include/uapi/linux/ethtool.h:19,
from include/linux/ethtool.h:18,
from include/linux/phy.h:16,
from drivers/net/phy/mdio/mdio-cavium.c:8:
drivers/net/phy/mdio/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^
arch/sh/include/mach-common/mach/mangle-port.h:41:23: note: in definition of macro 'ioswabq'
41 | # define ioswabq(x) (x)
| ^
arch/sh/include/asm/io.h:43:47: note: in expansion of macro '__raw_readq'
43 | #define readq_relaxed(c) ({ u64 __v = ioswabq(__raw_readq(c)); __v; })
| ^~~~~~~~~~~
arch/sh/include/asm/io.h:53:31: note: in expansion of macro 'readq_relaxed'
53 | #define readq(a) ({ u64 r_ = readq_relaxed(a); rmb(); r_; })
| ^~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:114:31: note: in expansion of macro 'readq'
114 | #define oct_mdio_readq(addr) readq((void *)addr)
| ^~~~~
drivers/net/phy/mdio/mdio-cavium.c:138:16: note: in expansion of macro 'oct_mdio_readq'
138 | smi_wr.u64 = oct_mdio_readq(p->register_base + SMI_WR_DAT);
| ^~~~~~~~~~~~~~
--
drivers/net/phy/mdio/mdio-octeon.c: In function 'octeon_mdiobus_probe':
drivers/net/phy/mdio/mdio-octeon.c:48:3: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
48 | (u64)devm_ioremap(&pdev->dev, mdio_phys, regsize);
| ^
In file included from include/linux/io.h:13,
from include/linux/of_address.h:7,
from drivers/net/phy/mdio/mdio-octeon.c:7:
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-octeon.c:56:2: note: in expansion of macro 'oct_mdio_writeq'
56 | oct_mdio_writeq(smi_en.u64, bus->register_base + SMI_EN);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-octeon.c:77:2: note: in expansion of macro 'oct_mdio_writeq'
77 | oct_mdio_writeq(smi_en.u64, bus->register_base + SMI_EN);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio/mdio-octeon.c: In function 'octeon_mdiobus_remove':
drivers/net/phy/mdio/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^
arch/sh/include/asm/io.h:33:71: note: in definition of macro '__raw_writeq'
33 | #define __raw_writeq(v,a) (__chk_io_ptr(a), *(volatile u64 __force *)(a) = (v))
| ^
arch/sh/include/asm/io.h:58:32: note: in expansion of macro 'writeq_relaxed'
58 | #define writeq(v,a) ({ wmb(); writeq_relaxed((v),(a)); })
| ^~~~~~~~~~~~~~
>> drivers/net/phy/mdio/mdio-cavium.h:113:36: note: in expansion of macro 'writeq'
113 | #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
| ^~~~~~
drivers/net/phy/mdio/mdio-octeon.c:91:2: note: in expansion of macro 'oct_mdio_writeq'
91 | oct_mdio_writeq(smi_en.u64, bus->register_base + SMI_EN);
| ^~~~~~~~~~~~~~~
drivers/net/phy/mdio/mdio-octeon.c: At top level:
drivers/net/phy/mdio/mdio-octeon.c:112:6: warning: no previous prototype for 'octeon_mdiobus_force_mod_depencency' [-Wmissing-prototypes]
112 | void octeon_mdiobus_force_mod_depencency(void)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/readq +114 drivers/net/phy/mdio/mdio-cavium.h
b8fb640643fcdb drivers/net/phy/mdio-cavium.h Nathan Chancellor 2019-08-02 112
1eefee901fca02 drivers/net/phy/mdio-cavium.h David Daney 2016-03-11 @113 #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr)
1eefee901fca02 drivers/net/phy/mdio-cavium.h David Daney 2016-03-11 @114 #define oct_mdio_readq(addr) readq((void *)addr)
1eefee901fca02 drivers/net/phy/mdio-cavium.h David Daney 2016-03-11 115 #endif
1eefee901fca02 drivers/net/phy/mdio-cavium.h David Daney 2016-03-11 116
:::::: The code at line 114 was first introduced by commit
:::::: 1eefee901fca0208b8a56f20cdc134e2b8638ae7 phy: mdio-octeon: Refactor into two files/modules
:::::: TO: David Daney <david.daney(a)cavium.com>
:::::: CC: David S. Miller <davem(a)davemloft.net>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[hnaz-linux-mm:master 1/169] drivers/uio/uio_aec.c:115:31: sparse: sparse: incorrect type in argument 2 (different address spaces)
by kernel test robot
tree: https://github.com/hnaz/linux-mm master
head: 5ec055192cbeb593816c9a33b97d7d5a0cddf60c
commit: 1a850f4a53b9a0dc1104c6bf418e5036edf429d4 [1/169] origin
config: arc-randconfig-s032-20200621 (attached as .config)
compiler: arc-elf-gcc (GCC) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-rc2-13-gc59158c8-dirty
git checkout 1a850f4a53b9a0dc1104c6bf418e5036edf429d4
# save the attached .config to linux build tree
make W=1 C=1 ARCH=arc CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/uio/uio_aec.c:44:49: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __iomem *int_flag @@ got void * @@
drivers/uio/uio_aec.c:44:49: sparse: expected void [noderef] __iomem *int_flag
drivers/uio/uio_aec.c:44:49: sparse: got void *
drivers/uio/uio_aec.c:50:49: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:50:49: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:50:49: sparse: got void *
drivers/uio/uio_aec.c:59:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:59:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:59:9: sparse: got void *
drivers/uio/uio_aec.c:59:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:59:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:59:9: sparse: got void *
drivers/uio/uio_aec.c:59:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:59:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:59:9: sparse: got void *
drivers/uio/uio_aec.c:59:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:59:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:59:9: sparse: got void *
drivers/uio/uio_aec.c:59:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:59:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:59:9: sparse: got void *
drivers/uio/uio_aec.c:59:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:59:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:59:9: sparse: got void *
drivers/uio/uio_aec.c:88:20: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *priv @@ got void [noderef] __iomem * @@
drivers/uio/uio_aec.c:88:20: sparse: expected void *priv
drivers/uio/uio_aec.c:88:20: sparse: got void [noderef] __iomem *
drivers/uio/uio_aec.c:104:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:104:42: sparse: expected void volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:104:42: sparse: got void *
drivers/uio/uio_aec.c:105:43: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:105:43: sparse: expected void volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:105:43: sparse: got void *
drivers/uio/uio_aec.c:106:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:106:34: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:106:34: sparse: got void *
>> drivers/uio/uio_aec.c:115:31: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem *p @@ got void *priv @@
>> drivers/uio/uio_aec.c:115:31: sparse: expected void [noderef] __iomem *p
drivers/uio/uio_aec.c:115:31: sparse: got void *priv
drivers/uio/uio_aec.c:130:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:130:42: sparse: expected void volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:130:42: sparse: got void *
drivers/uio/uio_aec.c:131:43: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:131:43: sparse: expected void volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:131:43: sparse: got void *
drivers/uio/uio_aec.c:133:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/uio/uio_aec.c:133:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/uio/uio_aec.c:133:28: sparse: got void *
>> drivers/uio/uio_aec.c:138:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got void *priv @@
>> drivers/uio/uio_aec.c:138:21: sparse: expected void const [noderef] __iomem *addr
drivers/uio/uio_aec.c:138:21: sparse: got void *priv
--
fs/pstore/ram_core.c:278:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned char * @@
fs/pstore/ram_core.c:278:34: sparse: expected void volatile [noderef] __iomem *addr
fs/pstore/ram_core.c:278:34: sparse: got unsigned char *
fs/pstore/ram_core.c:311:50: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned char * @@
fs/pstore/ram_core.c:311:50: sparse: expected void const volatile [noderef] __iomem *addr
fs/pstore/ram_core.c:311:50: sparse: got unsigned char *
fs/pstore/ram_core.c:312:65: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned char * @@
fs/pstore/ram_core.c:312:65: sparse: expected void const volatile [noderef] __iomem *addr
fs/pstore/ram_core.c:312:65: sparse: got unsigned char *
fs/pstore/ram_core.c:452:20: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *va @@ got void [noderef] __iomem * @@
fs/pstore/ram_core.c:452:20: sparse: expected void *va
fs/pstore/ram_core.c:452:20: sparse: got void [noderef] __iomem *
fs/pstore/ram_core.c:454:20: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *va @@ got void [noderef] __iomem * @@
fs/pstore/ram_core.c:454:20: sparse: expected void *va
fs/pstore/ram_core.c:454:20: sparse: got void [noderef] __iomem *
>> fs/pstore/ram_core.c:542:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got void *vaddr @@
>> fs/pstore/ram_core.c:542:36: sparse: expected void const [noderef] __iomem *addr
fs/pstore/ram_core.c:542:36: sparse: got void *vaddr
fs/pstore/ram_core.c:69:17: sparse: sparse: context imbalance in 'buffer_start_add' - unexpected unlock
fs/pstore/ram_core.c:95:17: sparse: sparse: context imbalance in 'buffer_size_add' - unexpected unlock
--
>> arch/arc/kernel/smp.c:267:48: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long [noderef] __percpu *ipi_data_ptr @@ got unsigned long * @@
>> arch/arc/kernel/smp.c:267:48: sparse: expected unsigned long [noderef] __percpu *ipi_data_ptr
arch/arc/kernel/smp.c:267:48: sparse: got unsigned long *
>> arch/arc/kernel/smp.c:282:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile *ptr @@ got unsigned long [noderef] __percpu *ipi_data_ptr @@
arch/arc/kernel/smp.c:282:18: sparse: expected void volatile *ptr
>> arch/arc/kernel/smp.c:282:18: sparse: got unsigned long [noderef] __percpu *ipi_data_ptr
>> arch/arc/kernel/smp.c:280:29: sparse: sparse: cast removes address space '__percpu' of expression
>> arch/arc/kernel/smp.c:416:72: sparse: sparse: incorrect type in argument 4 (different address spaces) @@ expected void [noderef] __percpu *percpu_dev_id @@ got int *dev @@
>> arch/arc/kernel/smp.c:416:72: sparse: expected void [noderef] __percpu *percpu_dev_id
arch/arc/kernel/smp.c:416:72: sparse: got int *dev
arch/arc/include/asm/irqflags-arcv2.h:80:31: sparse: sparse: undefined identifier '__builtin_arc_lr'
arch/arc/include/asm/irqflags-arcv2.h:83:17: sparse: sparse: undefined identifier '__builtin_arc_sr'
--
>> drivers/pinctrl/pinctrl-tb10x.c:770:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *base @@ got void [noderef] __iomem * @@
drivers/pinctrl/pinctrl-tb10x.c:770:21: sparse: expected void *base
>> drivers/pinctrl/pinctrl-tb10x.c:770:21: sparse: got void [noderef] __iomem *
>> drivers/pinctrl/pinctrl-tb10x.c:502:30: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *base @@
>> drivers/pinctrl/pinctrl-tb10x.c:502:30: sparse: expected void const volatile [noderef] __iomem *addr
drivers/pinctrl/pinctrl-tb10x.c:502:30: sparse: got void *base
>> drivers/pinctrl/pinctrl-tb10x.c:504:30: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *base @@
>> drivers/pinctrl/pinctrl-tb10x.c:504:30: sparse: expected void volatile [noderef] __iomem *addr
drivers/pinctrl/pinctrl-tb10x.c:504:30: sparse: got void *base
>> drivers/pinctrl/pinctrl-tb10x.c:502:30: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *base @@
>> drivers/pinctrl/pinctrl-tb10x.c:502:30: sparse: expected void const volatile [noderef] __iomem *addr
drivers/pinctrl/pinctrl-tb10x.c:502:30: sparse: got void *base
>> drivers/pinctrl/pinctrl-tb10x.c:504:30: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *base @@
>> drivers/pinctrl/pinctrl-tb10x.c:504:30: sparse: expected void volatile [noderef] __iomem *addr
drivers/pinctrl/pinctrl-tb10x.c:504:30: sparse: got void *base
drivers/pinctrl/pinctrl-tb10x.c:511:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *base @@
drivers/pinctrl/pinctrl-tb10x.c:511:31: sparse: expected void const volatile [noderef] __iomem *addr
drivers/pinctrl/pinctrl-tb10x.c:511:31: sparse: got void *base
--
>> drivers/video/fbdev/i740fb.c:743:20: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *ptr @@ got char [noderef] __iomem *screen_base @@
drivers/video/fbdev/i740fb.c:743:20: sparse: expected void *ptr
drivers/video/fbdev/i740fb.c:743:20: sparse: got char [noderef] __iomem *screen_base
--
drivers/video/fbdev/riva/fbdev.c:493:14: sparse: sparse: cast to restricted __le16
drivers/video/fbdev/riva/fbdev.c:494:14: sparse: sparse: cast to restricted __le16
>> drivers/video/fbdev/riva/fbdev.c:2064:42: sparse: sparse: incorrect type in argument 1 (different modifiers) @@ expected void const [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem *[usertype] PRAMIN @@
>> drivers/video/fbdev/riva/fbdev.c:2064:42: sparse: expected void const [noderef] __iomem *addr
>> drivers/video/fbdev/riva/fbdev.c:2064:42: sparse: got unsigned int volatile [noderef] [usertype] __iomem *[usertype] PRAMIN
drivers/video/fbdev/riva/fbdev.c:2097:34: sparse: sparse: incorrect type in argument 1 (different modifiers) @@ expected void const [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem *[usertype] PRAMIN @@
drivers/video/fbdev/riva/fbdev.c:2097:34: sparse: expected void const [noderef] __iomem *addr
drivers/video/fbdev/riva/fbdev.c:2097:34: sparse: got unsigned int volatile [noderef] [usertype] __iomem *[usertype] PRAMIN
--
>> drivers/video/fbdev/nvidia/nvidia.c:1411:20: sparse: sparse: incorrect type in argument 1 (different modifiers) @@ expected void const [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem *REGS @@
>> drivers/video/fbdev/nvidia/nvidia.c:1411:20: sparse: expected void const [noderef] __iomem *addr
>> drivers/video/fbdev/nvidia/nvidia.c:1411:20: sparse: got unsigned int volatile [noderef] [usertype] __iomem *REGS
drivers/video/fbdev/nvidia/nvidia.c:1436:20: sparse: sparse: incorrect type in argument 1 (different modifiers) @@ expected void const [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem *REGS @@
drivers/video/fbdev/nvidia/nvidia.c:1436:20: sparse: expected void const [noderef] __iomem *addr
drivers/video/fbdev/nvidia/nvidia.c:1436:20: sparse: got unsigned int volatile [noderef] [usertype] __iomem *REGS
--
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] addr @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: expected void *[assigned] addr
drivers/gpu/drm/ttm/ttm_bo_util.c:219:30: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] addr @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: expected void *[assigned] addr
drivers/gpu/drm/ttm/ttm_bo_util.c:221:30: sparse: got void [noderef] __iomem *
>> drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got void *virtual @@
>> drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: expected void const [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:241:25: sparse: got void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:256:40: sparse: got unsigned int [usertype] *
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:256:49: sparse: got unsigned int [usertype] *
drivers/gpu/drm/ttm/ttm_bo_util.c:275:28: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *[assigned] src @@
drivers/gpu/drm/ttm/ttm_bo_util.c:275:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:275:28: sparse: got void *[assigned] src
drivers/gpu/drm/ttm/ttm_bo_util.c:297:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *[assigned] dst @@
drivers/gpu/drm/ttm/ttm_bo_util.c:297:21: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:297:21: sparse: got void *[assigned] dst
drivers/gpu/drm/ttm/ttm_bo_util.c:344:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *[addressable] new_iomap @@
drivers/gpu/drm/ttm/ttm_bo_util.c:344:27: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:344:27: sparse: got void *[addressable] new_iomap
drivers/gpu/drm/ttm/ttm_bo_util.c:486:18: sparse: sparse: undefined identifier 'boot_cpu_data'
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *virtual @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: expected void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:516:38: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *virtual @@ got void [noderef] __iomem * @@
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: expected void *virtual
drivers/gpu/drm/ttm/ttm_bo_util.c:519:38: sparse: got void [noderef] __iomem *
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got void *virtual @@
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: expected void const [noderef] __iomem *addr
drivers/gpu/drm/ttm/ttm_bo_util.c:608:28: sparse: got void *virtual
--
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: sparse: incorrect type in initializer (different base types) @@ expected restricted __poll_t ( *poll )( ... ) @@ got unsigned int ( * )( ... ) @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: expected restricted __poll_t ( *poll )( ... )
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:138:17: sparse: got unsigned int ( * )( ... )
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __user *__p @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: expected void [noderef] __user *__p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:257:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void const [noderef] __user *__p @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: expected void const [noderef] __user *__p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:259:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __user *__p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: expected void [noderef] __user *__p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:346:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void const [noderef] __user *__p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: expected void const [noderef] __user *__p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:400:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __user *__p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: expected void [noderef] __user *__p
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:457:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:511:21: sparse: sparse: too many warnings
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1256:25: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1257:17: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1313:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1313:17: sparse: struct dma_fence [noderef] __rcu *
--
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:819:42: sparse: sparse: cast removes address space '__iomem' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:1094:5: sparse: sparse: symbol 'amdgpu_ttm_gart_bind' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void const [noderef] __user *__p @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: expected void const [noderef] __user *__p
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2353:21: sparse: sparse: cast removes address space '__user' of expression
arch/arc/include/asm/uaccess.h:619:33: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned char *d_char @@ got void [noderef] __user *to @@
arch/arc/include/asm/uaccess.h:619:33: sparse: expected unsigned char *d_char
arch/arc/include/asm/uaccess.h:619:33: sparse: got void [noderef] __user *to
--
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __user *__p @@ got unsigned int [usertype] * @@
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: expected void [noderef] __user *__p
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:384:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __user *__p @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: expected void [noderef] __user *__p
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c:399:21: sparse: sparse: cast removes address space '__user' of expression
--
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:104:58: sparse: got void *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: expected void const volatile [noderef] __iomem *addr
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:110:58: sparse: got void *
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got void *[assigned] emap @@
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: expected void const [noderef] __iomem *addr
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:157:25: sparse: got void *[assigned] emap
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *map @@ got void [noderef] __iomem * @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: expected void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:174:19: sparse: got void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] __iomem * @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: expected void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:225:28: sparse: got void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] __iomem * @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: expected void [noderef] __iomem *
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:233:28: sparse: got void *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem *map @@ got void *map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: expected void [noderef] __iomem *map
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:240:21: sparse: got void *map
>> drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got void *[assigned] map @@
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: expected void const [noderef] __iomem *addr
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c:327:25: sparse: got void *[assigned] map
--
drivers/gpu/drm/qxl/qxl_kms.c:36:5: sparse: sparse: symbol 'qxl_log_level' was not declared. Should it be static?
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct qxl_rom *rom @@ got void [noderef] __iomem * @@
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: expected struct qxl_rom *rom
drivers/gpu/drm/qxl/qxl_kms.c:170:19: sparse: got void [noderef] __iomem *
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct qxl_ram_header *ram_header @@ got void [noderef] __iomem * @@
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: expected struct qxl_ram_header *ram_header
drivers/gpu/drm/qxl/qxl_kms.c:188:26: sparse: got void [noderef] __iomem *
>> drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got struct qxl_ram_header *ram_header @@
>> drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: expected void const [noderef] __iomem *addr
drivers/gpu/drm/qxl/qxl_kms.c:277:21: sparse: got struct qxl_ram_header *ram_header
>> drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got struct qxl_rom *rom @@
drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: expected void const [noderef] __iomem *addr
drivers/gpu/drm/qxl/qxl_kms.c:281:21: sparse: got struct qxl_rom *rom
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got struct qxl_ram_header *ram_header @@
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: expected void const [noderef] __iomem *addr
drivers/gpu/drm/qxl/qxl_kms.c:301:21: sparse: got struct qxl_ram_header *ram_header
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem *addr @@ got struct qxl_rom *rom @@
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: expected void const [noderef] __iomem *addr
drivers/gpu/drm/qxl/qxl_kms.c:302:21: sparse: got struct qxl_rom *rom
vim +115 drivers/uio/uio_aec.c
1bafeb378e915f Brandon Philips 2009-01-27 68
b17b75bb524c6c Bill Pemberton 2012-11-19 69 static int probe(struct pci_dev *pdev, const struct pci_device_id *id)
1bafeb378e915f Brandon Philips 2009-01-27 70 {
1bafeb378e915f Brandon Philips 2009-01-27 71 struct uio_info *info;
1bafeb378e915f Brandon Philips 2009-01-27 72 int ret;
1bafeb378e915f Brandon Philips 2009-01-27 73
1bafeb378e915f Brandon Philips 2009-01-27 74 info = kzalloc(sizeof(struct uio_info), GFP_KERNEL);
1bafeb378e915f Brandon Philips 2009-01-27 75 if (!info)
1bafeb378e915f Brandon Philips 2009-01-27 76 return -ENOMEM;
1bafeb378e915f Brandon Philips 2009-01-27 77
1bafeb378e915f Brandon Philips 2009-01-27 78 if (pci_enable_device(pdev))
1bafeb378e915f Brandon Philips 2009-01-27 79 goto out_free;
1bafeb378e915f Brandon Philips 2009-01-27 80
1bafeb378e915f Brandon Philips 2009-01-27 81 if (pci_request_regions(pdev, "aectc"))
1bafeb378e915f Brandon Philips 2009-01-27 82 goto out_disable;
1bafeb378e915f Brandon Philips 2009-01-27 83
1bafeb378e915f Brandon Philips 2009-01-27 84 info->name = "aectc";
1bafeb378e915f Brandon Philips 2009-01-27 85 info->port[0].start = pci_resource_start(pdev, 0);
1bafeb378e915f Brandon Philips 2009-01-27 86 if (!info->port[0].start)
1bafeb378e915f Brandon Philips 2009-01-27 87 goto out_release;
1bafeb378e915f Brandon Philips 2009-01-27 88 info->priv = pci_iomap(pdev, 0, 0);
1bafeb378e915f Brandon Philips 2009-01-27 89 if (!info->priv)
1bafeb378e915f Brandon Philips 2009-01-27 90 goto out_release;
1bafeb378e915f Brandon Philips 2009-01-27 91 info->port[0].size = pci_resource_len(pdev, 0);
1bafeb378e915f Brandon Philips 2009-01-27 92 info->port[0].porttype = UIO_PORT_GPIO;
1bafeb378e915f Brandon Philips 2009-01-27 93
1bafeb378e915f Brandon Philips 2009-01-27 94 info->version = "0.0.1";
1bafeb378e915f Brandon Philips 2009-01-27 95 info->irq = pdev->irq;
1bafeb378e915f Brandon Philips 2009-01-27 96 info->irq_flags = IRQF_SHARED;
1bafeb378e915f Brandon Philips 2009-01-27 97 info->handler = aectc_irq;
1bafeb378e915f Brandon Philips 2009-01-27 98
1bafeb378e915f Brandon Philips 2009-01-27 99 print_board_data(pdev, info);
1bafeb378e915f Brandon Philips 2009-01-27 100 ret = uio_register_device(&pdev->dev, info);
1bafeb378e915f Brandon Philips 2009-01-27 101 if (ret)
1bafeb378e915f Brandon Philips 2009-01-27 102 goto out_unmap;
1bafeb378e915f Brandon Philips 2009-01-27 103
1bafeb378e915f Brandon Philips 2009-01-27 @104 iowrite32(INT_ENABLE, info->priv + INT_ENABLE_ADDR);
1bafeb378e915f Brandon Philips 2009-01-27 105 iowrite8(INT_MASK_ALL, info->priv + INT_MASK_ADDR);
1bafeb378e915f Brandon Philips 2009-01-27 106 if (!(ioread8(info->priv + INTA_DRVR_ADDR)
1bafeb378e915f Brandon Philips 2009-01-27 107 & INTA_ENABLED_FLAG))
1bafeb378e915f Brandon Philips 2009-01-27 108 dev_err(&pdev->dev, "aectc: interrupts not enabled\n");
1bafeb378e915f Brandon Philips 2009-01-27 109
1bafeb378e915f Brandon Philips 2009-01-27 110 pci_set_drvdata(pdev, info);
1bafeb378e915f Brandon Philips 2009-01-27 111
1bafeb378e915f Brandon Philips 2009-01-27 112 return 0;
1bafeb378e915f Brandon Philips 2009-01-27 113
1bafeb378e915f Brandon Philips 2009-01-27 114 out_unmap:
1bafeb378e915f Brandon Philips 2009-01-27 @115 pci_iounmap(pdev, info->priv);
1bafeb378e915f Brandon Philips 2009-01-27 116 out_release:
1bafeb378e915f Brandon Philips 2009-01-27 117 pci_release_regions(pdev);
1bafeb378e915f Brandon Philips 2009-01-27 118 out_disable:
1bafeb378e915f Brandon Philips 2009-01-27 119 pci_disable_device(pdev);
1bafeb378e915f Brandon Philips 2009-01-27 120 out_free:
1bafeb378e915f Brandon Philips 2009-01-27 121 kfree(info);
1bafeb378e915f Brandon Philips 2009-01-27 122 return -ENODEV;
1bafeb378e915f Brandon Philips 2009-01-27 123 }
1bafeb378e915f Brandon Philips 2009-01-27 124
1bafeb378e915f Brandon Philips 2009-01-27 125 static void remove(struct pci_dev *pdev)
1bafeb378e915f Brandon Philips 2009-01-27 126 {
1bafeb378e915f Brandon Philips 2009-01-27 127 struct uio_info *info = pci_get_drvdata(pdev);
1bafeb378e915f Brandon Philips 2009-01-27 128
1bafeb378e915f Brandon Philips 2009-01-27 129 /* disable interrupts */
1bafeb378e915f Brandon Philips 2009-01-27 @130 iowrite8(INT_DISABLE, info->priv + INT_MASK_ADDR);
1bafeb378e915f Brandon Philips 2009-01-27 131 iowrite32(INT_DISABLE, info->priv + INT_ENABLE_ADDR);
1bafeb378e915f Brandon Philips 2009-01-27 132 /* read mailbox to ensure board drops irq */
1bafeb378e915f Brandon Philips 2009-01-27 133 ioread8(info->priv + MAILBOX);
1bafeb378e915f Brandon Philips 2009-01-27 134
1bafeb378e915f Brandon Philips 2009-01-27 135 uio_unregister_device(info);
1bafeb378e915f Brandon Philips 2009-01-27 136 pci_release_regions(pdev);
1bafeb378e915f Brandon Philips 2009-01-27 137 pci_disable_device(pdev);
1bafeb378e915f Brandon Philips 2009-01-27 @138 iounmap(info->priv);
1bafeb378e915f Brandon Philips 2009-01-27 139
1bafeb378e915f Brandon Philips 2009-01-27 140 kfree(info);
1bafeb378e915f Brandon Philips 2009-01-27 141 }
1bafeb378e915f Brandon Philips 2009-01-27 142
:::::: The code at line 115 was first introduced by commit
:::::: 1bafeb378e915f39b1bf44ee0871823d6f402ea5 uio: add the uio_aec driver
:::::: TO: Brandon Philips <brandon(a)ifup.org>
:::::: CC: Greg Kroah-Hartman <gregkh(a)suse.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[lunn:v5.8-rc1-net-next-phy-subdirs 2/3] drivers/net/phy/phy/at803x.c:431:24: note: in expansion of macro 'FIELD_PREP'
by kernel test robot
tree: https://github.com/lunn/linux.git v5.8-rc1-net-next-phy-subdirs
head: 6758dc32213e56e6ddd16049bc0cf1e1a36ce270
commit: 55b85b0b27e41f822363c40083b44daae8b2e5dd [2/3] net: phy: Move into subdirectories
config: i386-randconfig-s002-20200621 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-rc2-13-gc59158c8-dirty
git checkout 55b85b0b27e41f822363c40083b44daae8b2e5dd
# save the attached .config to linux build tree
make W=1 C=1 ARCH=i386 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
In file included from include/linux/phy.h:14,
from drivers/net/phy/phy/at803x.c:10:
drivers/net/phy/phy/at803x.c: In function 'at803x_parse_dt':
include/linux/bitfield.h:52:28: warning: comparison is always false due to limited range of data type [-Wtype-limits]
52 | BUILD_BUG_ON_MSG((_mask) > (typeof(_reg))~0ull, | ^
include/linux/compiler.h:372:9: note: in definition of macro '__compiletime_assert'
372 | if (!(condition)) | ^~~~~~~~~
include/linux/compiler.h:392:2: note: in expansion of macro '_compiletime_assert'
392 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/bitfield.h:52:3: note: in expansion of macro 'BUILD_BUG_ON_MSG'
52 | BUILD_BUG_ON_MSG((_mask) > (typeof(_reg))~0ull, | ^~~~~~~~~~~~~~~~
include/linux/bitfield.h:94:3: note: in expansion of macro '__BF_FIELD_CHECK'
94 | __BF_FIELD_CHECK(_mask, 0ULL, _val, "FIELD_PREP: "); | ^~~~~~~~~~~~~~~~
>> drivers/net/phy/phy/at803x.c:431:24: note: in expansion of macro 'FIELD_PREP'
431 | priv->clk_25m_reg |= FIELD_PREP(mask, sel);
| ^~~~~~~~~~
sparse warnings: (new ones prefixed by >>)
>> drivers/net/phy/phy/mscc/mscc_macsec.c:391:42: sparse: sparse: cast from restricted sci_t
>> drivers/net/phy/phy/mscc/mscc_macsec.c:393:42: sparse: sparse: restricted sci_t degrades to integer
>> drivers/net/phy/phy/mscc/mscc_macsec.c:400:42: sparse: sparse: restricted __be16 degrades to integer
drivers/net/phy/phy/mscc/mscc_macsec.c:606:34: sparse: sparse: cast from restricted sci_t
drivers/net/phy/phy/mscc/mscc_macsec.c:608:34: sparse: sparse: restricted sci_t degrades to integer
vim +/FIELD_PREP +431 drivers/net/phy/phy/at803x.c
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 398
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 399 static int at803x_parse_dt(struct phy_device *phydev)
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 400 {
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 401 struct device_node *node = phydev->mdio.dev.of_node;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 402 struct at803x_priv *priv = phydev->priv;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 403 unsigned int sel, mask;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 404 u32 freq, strength;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 405 int ret;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 406
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 407 if (!IS_ENABLED(CONFIG_OF_MDIO))
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 408 return 0;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 409
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 410 ret = of_property_read_u32(node, "qca,clk-out-frequency", &freq);
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 411 if (!ret) {
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 412 mask = AT803X_CLK_OUT_MASK;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 413 switch (freq) {
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 414 case 25000000:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 415 sel = AT803X_CLK_OUT_25MHZ_XTAL;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 416 break;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 417 case 50000000:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 418 sel = AT803X_CLK_OUT_50MHZ_PLL;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 419 break;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 420 case 62500000:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 421 sel = AT803X_CLK_OUT_62_5MHZ_PLL;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 422 break;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 423 case 125000000:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 424 sel = AT803X_CLK_OUT_125MHZ_PLL;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 425 break;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 426 default:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 427 phydev_err(phydev, "invalid qca,clk-out-frequency\n");
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 428 return -EINVAL;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 429 }
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 430
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 @431 priv->clk_25m_reg |= FIELD_PREP(mask, sel);
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 432 priv->clk_25m_mask |= mask;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 433
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 434 /* Fixup for the AR8030/AR8035. This chip has another mask and
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 435 * doesn't support the DSP reference. Eg. the lowest bit of the
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 436 * mask. The upper two bits select the same frequencies. Mask
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 437 * the lowest bit here.
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 438 *
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 439 * Warning:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 440 * There was no datasheet for the AR8030 available so this is
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 441 * just a guess. But the AR8035 is listed as pin compatible
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 442 * to the AR8030 so there might be a good chance it works on
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 443 * the AR8030 too.
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 444 */
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 445 if (at803x_match_phy_id(phydev, ATH8030_PHY_ID) ||
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 446 at803x_match_phy_id(phydev, ATH8035_PHY_ID)) {
b1f4c209d84057b drivers/net/phy/at803x.c Oleksij Rempel 2020-04-01 447 priv->clk_25m_reg &= AT8035_CLK_OUT_MASK;
b1f4c209d84057b drivers/net/phy/at803x.c Oleksij Rempel 2020-04-01 448 priv->clk_25m_mask &= AT8035_CLK_OUT_MASK;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 449 }
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 450 }
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 451
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 452 ret = of_property_read_u32(node, "qca,clk-out-strength", &strength);
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 453 if (!ret) {
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 454 priv->clk_25m_mask |= AT803X_CLK_OUT_STRENGTH_MASK;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 455 switch (strength) {
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 456 case AR803X_STRENGTH_FULL:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 457 priv->clk_25m_reg |= AT803X_CLK_OUT_STRENGTH_FULL;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 458 break;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 459 case AR803X_STRENGTH_HALF:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 460 priv->clk_25m_reg |= AT803X_CLK_OUT_STRENGTH_HALF;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 461 break;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 462 case AR803X_STRENGTH_QUARTER:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 463 priv->clk_25m_reg |= AT803X_CLK_OUT_STRENGTH_QUARTER;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 464 break;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 465 default:
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 466 phydev_err(phydev, "invalid qca,clk-out-strength\n");
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 467 return -EINVAL;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 468 }
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 469 }
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 470
428061f70f1aa3a drivers/net/phy/at803x.c Michael Walle 2019-11-06 471 /* Only supported on AR8031/AR8033, the AR8030/AR8035 use strapping
428061f70f1aa3a drivers/net/phy/at803x.c Michael Walle 2019-11-06 472 * options.
428061f70f1aa3a drivers/net/phy/at803x.c Michael Walle 2019-11-06 473 */
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 474 if (at803x_match_phy_id(phydev, ATH8031_PHY_ID)) {
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 475 if (of_property_read_bool(node, "qca,keep-pll-enabled"))
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 476 priv->flags |= AT803X_KEEP_PLL_ENABLED;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 477
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 478 ret = at8031_register_regulators(phydev);
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 479 if (ret < 0)
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 480 return ret;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 481
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 482 priv->vddio = devm_regulator_get_optional(&phydev->mdio.dev,
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 483 "vddio");
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 484 if (IS_ERR(priv->vddio)) {
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 485 phydev_err(phydev, "failed to get VDDIO regulator\n");
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 486 return PTR_ERR(priv->vddio);
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 487 }
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 488
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 489 ret = regulator_enable(priv->vddio);
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 490 if (ret < 0)
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 491 return ret;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 492 }
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 493
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 494 return 0;
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 495 }
2f664823a47021a drivers/net/phy/at803x.c Michael Walle 2019-11-06 496
:::::: The code at line 431 was first introduced by commit
:::::: 2f664823a47021ae029fe91272adbf0a223e477f net: phy: at803x: add device tree binding
:::::: TO: Michael Walle <michael(a)walle.cc>
:::::: CC: David S. Miller <davem(a)davemloft.net>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[morimoto-linux:fw-cleanup-2020-06-19-v2 30/146] sound/soc/codecs/max98088.c:1283 max98088_dai1_mute() warn: inconsistent indenting
by kernel test robot
tree: https://github.com/morimoto/linux fw-cleanup-2020-06-19-v2
head: a535f98aa3e435787676dcc250f4944a94a8cfee
commit: 1cd4d40eac384ef0f4e9706f9b4f13872c29f70f [30/146] ASoC: codecs: max*: merge .digital_mute() into .mute_stream()
config: nios2-randconfig-m031-20200621 (attached as .config)
compiler: nios2-linux-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
New smatch warnings:
sound/soc/codecs/max98088.c:1283 max98088_dai1_mute() warn: inconsistent indenting
sound/soc/codecs/max98088.c:1302 max98088_dai2_mute() warn: inconsistent indenting
Old smatch warnings:
sound/soc/codecs/max98088.c:315 m98088_eq_band() warn: inconsistent indenting
sound/soc/codecs/max98088.c:653 max98088_line_pga() warn: inconsistent indenting
sound/soc/codecs/max98088.c:1105 max98088_dai_set_sysclk() warn: inconsistent indenting
sound/soc/codecs/max98088.c:1522 max98088_put_eq_enum() warn: inconsistent indenting
sound/soc/codecs/max98088.c:1754 max98088_i2c_probe() warn: inconsistent indenting
vim +1283 sound/soc/codecs/max98088.c
1276
1277 static int max98088_dai1_mute(struct snd_soc_dai *codec_dai, int mute,
1278 int direction)
1279 {
1280 struct snd_soc_component *component = codec_dai->component;
1281 int reg;
1282
> 1283 if (direction != SNDRV_PCM_STREAM_PLAYBACK)
1284 return 0;
1285
1286 if (mute)
1287 reg = M98088_DAI_MUTE;
1288 else
1289 reg = 0;
1290
1291 snd_soc_component_update_bits(component, M98088_REG_2F_LVL_DAI1_PLAY,
1292 M98088_DAI_MUTE_MASK, reg);
1293 return 0;
1294 }
1295
1296 static int max98088_dai2_mute(struct snd_soc_dai *codec_dai, int mute,
1297 int direction)
1298 {
1299 struct snd_soc_component *component = codec_dai->component;
1300 int reg;
1301
> 1302 if (direction != SNDRV_PCM_STREAM_PLAYBACK)
1303 return 0;
1304
1305 if (mute)
1306 reg = M98088_DAI_MUTE;
1307 else
1308 reg = 0;
1309
1310 snd_soc_component_update_bits(component, M98088_REG_31_LVL_DAI2_PLAY,
1311 M98088_DAI_MUTE_MASK, reg);
1312 return 0;
1313 }
1314
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/mtd/nand/raw/xway_nand.c:227:30: error: 'mtd' undeclared
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 64677779e8962c20b580b471790fe42367750599
commit: 9fdd78f7bcda3e6a9f53c355529b3bf037c0e24f mtd: rawnand: xway: Stop using nand_release()
date: 3 weeks ago
config: mips-xway_defconfig (attached as .config)
compiler: mips-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 9fdd78f7bcda3e6a9f53c355529b3bf037c0e24f
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/mtd/nand/raw/xway_nand.c: In function 'xway_nand_remove':
>> drivers/mtd/nand/raw/xway_nand.c:227:30: error: 'mtd' undeclared (first use in this function)
227 | ret = mtd_device_unregister(mtd);
| ^~~
drivers/mtd/nand/raw/xway_nand.c:227:30: note: each undeclared identifier is reported only once for each function it appears in
vim +/mtd +227 drivers/mtd/nand/raw/xway_nand.c
217
218 /*
219 * Remove a NAND device.
220 */
221 static int xway_nand_remove(struct platform_device *pdev)
222 {
223 struct xway_nand_data *data = platform_get_drvdata(pdev);
224 struct nand_chip *chip = &data->chip;
225 int ret;
226
> 227 ret = mtd_device_unregister(mtd);
228 WARN_ON(ret);
229 nand_cleanup(chip);
230
231 return 0;
232 }
233
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/vhost/vhost.c:937:16: sparse: sparse: restricted __virtio16 degrades to integer
by kernel test robot
Hi Jason,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 64677779e8962c20b580b471790fe42367750599
commit: 20c384f1ea1a0bc7320bc445c72dd02d2970d594 vhost: refine vhost and vringh kconfig
date: 3 months ago
config: riscv-randconfig-s031-20200621 (attached as .config)
compiler: riscv32-linux-gcc (GCC) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-rc2-13-gc59158c8-dirty
git checkout 20c384f1ea1a0bc7320bc445c72dd02d2970d594
# save the attached .config to linux build tree
make W=1 C=1 ARCH=riscv CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
>> drivers/vhost/vhost.c:937:16: sparse: sparse: restricted __virtio16 degrades to integer
>> drivers/vhost/vhost.c:937:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:937:16: sparse: sparse: cast from restricted __virtio16
drivers/vhost/vhost.c:937:16: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *addr @@ got restricted __virtio16 [noderef] <asn:1> * @@
drivers/vhost/vhost.c:937:16: sparse: expected void *addr
drivers/vhost/vhost.c:937:16: sparse: got restricted __virtio16 [noderef] <asn:1> *
>> drivers/vhost/vhost.c:937:16: sparse: sparse: restricted __virtio16 degrades to integer
>> drivers/vhost/vhost.c:937:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:937:16: sparse: sparse: cast from restricted __virtio16
drivers/vhost/vhost.c:900:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *addr @@ got void *addr @@
drivers/vhost/vhost.c:900:42: sparse: expected void [noderef] <asn:1> *addr
drivers/vhost/vhost.c:900:42: sparse: got void *addr
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:922:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:922:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:922:16: sparse: sparse: cast from restricted __virtio16
drivers/vhost/vhost.c:922:16: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *addr @@ got restricted __virtio16 [noderef] [usertype] <asn:1> * @@
drivers/vhost/vhost.c:922:16: sparse: expected void *addr
drivers/vhost/vhost.c:922:16: sparse: got restricted __virtio16 [noderef] [usertype] <asn:1> *
drivers/vhost/vhost.c:922:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:922:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:922:16: sparse: sparse: cast from restricted __virtio16
drivers/vhost/vhost.c:900:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *addr @@ got void *addr @@
drivers/vhost/vhost.c:900:42: sparse: expected void [noderef] <asn:1> *addr
drivers/vhost/vhost.c:900:42: sparse: got void *addr
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:1014:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1014:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1014:16: sparse: sparse: cast to restricted __virtio16
drivers/vhost/vhost.c:1014:16: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *addr @@ got restricted __virtio16 [noderef] <asn:1> * @@
drivers/vhost/vhost.c:1014:16: sparse: expected void *addr
drivers/vhost/vhost.c:1014:16: sparse: got restricted __virtio16 [noderef] <asn:1> *
drivers/vhost/vhost.c:1014:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1014:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1014:16: sparse: sparse: cast to restricted __virtio16
drivers/vhost/vhost.c:900:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *addr @@ got void *addr @@
drivers/vhost/vhost.c:900:42: sparse: expected void [noderef] <asn:1> *addr
drivers/vhost/vhost.c:900:42: sparse: got void *addr
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:989:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:989:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:989:16: sparse: sparse: cast to restricted __virtio16
drivers/vhost/vhost.c:989:16: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *addr @@ got restricted __virtio16 [noderef] <asn:1> * @@
drivers/vhost/vhost.c:989:16: sparse: expected void *addr
drivers/vhost/vhost.c:989:16: sparse: got restricted __virtio16 [noderef] <asn:1> *
drivers/vhost/vhost.c:989:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:989:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:989:16: sparse: sparse: cast to restricted __virtio16
drivers/vhost/vhost.c:900:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *addr @@ got void *addr @@
drivers/vhost/vhost.c:900:42: sparse: expected void [noderef] <asn:1> *addr
drivers/vhost/vhost.c:900:42: sparse: got void *addr
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:995:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:995:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:995:16: sparse: sparse: cast to restricted __virtio16
drivers/vhost/vhost.c:995:16: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *addr @@ got restricted __virtio16 [noderef] <asn:1> * @@
drivers/vhost/vhost.c:995:16: sparse: expected void *addr
drivers/vhost/vhost.c:995:16: sparse: got restricted __virtio16 [noderef] <asn:1> *
drivers/vhost/vhost.c:995:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:995:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:995:16: sparse: sparse: cast to restricted __virtio16
drivers/vhost/vhost.c:900:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *addr @@ got void *addr @@
drivers/vhost/vhost.c:900:42: sparse: expected void [noderef] <asn:1> *addr
drivers/vhost/vhost.c:900:42: sparse: got void *addr
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:944:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:944:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:944:16: sparse: sparse: cast from restricted __virtio16
drivers/vhost/vhost.c:944:16: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *addr @@ got restricted __virtio16 [noderef] <asn:1> * @@
drivers/vhost/vhost.c:944:16: sparse: expected void *addr
drivers/vhost/vhost.c:944:16: sparse: got restricted __virtio16 [noderef] <asn:1> *
drivers/vhost/vhost.c:944:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:944:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:944:16: sparse: sparse: cast from restricted __virtio16
drivers/vhost/vhost.c:900:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *addr @@ got void *addr @@
drivers/vhost/vhost.c:900:42: sparse: expected void [noderef] <asn:1> *addr
drivers/vhost/vhost.c:900:42: sparse: got void *addr
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:1002:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1002:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1002:16: sparse: sparse: cast to restricted __virtio16
drivers/vhost/vhost.c:1002:16: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *addr @@ got restricted __virtio16 [noderef] <asn:1> * @@
drivers/vhost/vhost.c:1002:16: sparse: expected void *addr
drivers/vhost/vhost.c:1002:16: sparse: got restricted __virtio16 [noderef] <asn:1> *
drivers/vhost/vhost.c:1002:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1002:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1002:16: sparse: sparse: cast to restricted __virtio16
drivers/vhost/vhost.c:900:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *addr @@ got void *addr @@
drivers/vhost/vhost.c:900:42: sparse: expected void [noderef] <asn:1> *addr
drivers/vhost/vhost.c:900:42: sparse: got void *addr
drivers/vhost/vhost.c:753:17: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] <asn:1> * @@ got void * @@
drivers/vhost/vhost.c:753:17: sparse: expected void [noderef] <asn:1> *
drivers/vhost/vhost.c:753:17: sparse: got void *
drivers/vhost/vhost.c:1008:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1008:16: sparse: sparse: restricted __virtio16 degrades to integer
drivers/vhost/vhost.c:1008:16: sparse: sparse: cast to restricted __virtio16
vim +937 drivers/vhost/vhost.c
7b5d753ebc22c5 Jason Wang 2019-05-24 935
7b5d753ebc22c5 Jason Wang 2019-05-24 936 {
7b5d753ebc22c5 Jason Wang 2019-05-24 @937 return vhost_put_user(vq, cpu_to_vhost16(vq, vq->used_flags),
7b5d753ebc22c5 Jason Wang 2019-05-24 938 &vq->used->flags);
7b5d753ebc22c5 Jason Wang 2019-05-24 939 }
7b5d753ebc22c5 Jason Wang 2019-05-24 940
:::::: The code at line 937 was first introduced by commit
:::::: 7b5d753ebc22c5b6935a70ce9a857dc6220784f8 vhost: fine grain userspace memory accessors
:::::: TO: Jason Wang <jasowang(a)redhat.com>
:::::: CC: Michael S. Tsirkin <mst(a)redhat.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months