[peterz-queue:sched/core-sched 4/12] kernel/sched/core.c:4990:20: warning: unused function 'sched_core_cpu_starting'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git sched/core-sched
head: 541d5dbf9c750de5c3a96e09ee361553f1a65729
commit: 9d990a8f762f9dc5a2d8979eb47f440073506685 [4/12] sched: Core-wide rq->lock
config: mips-randconfig-r026-20201130 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project dfcf1acf13226be0f599a7ab6b395b66dc9545d6)
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 mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?...
git remote add peterz-queue https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
git fetch --no-tags peterz-queue sched/core-sched
git checkout 9d990a8f762f9dc5a2d8979eb47f440073506685
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang 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 warnings (new ones prefixed by >>):
kernel/sched/core.c:5264:35: warning: no previous prototype for function 'schedule_user'
asmlinkage __visible void __sched schedule_user(void)
^
kernel/sched/core.c:5264:22: note: declare 'static' if the function is not intended to be used outside of this translation unit
asmlinkage __visible void __sched schedule_user(void)
^
static
kernel/sched/core.c:2948:20: warning: unused function 'rq_has_pinned_tasks'
static inline bool rq_has_pinned_tasks(struct rq
^
kernel/sched/core.c:4740:20: warning: unused function 'sched_tick_start'
static inline void sched_tick_start(int cpu) { }
^
kernel/sched/core.c:4741:20: warning: unused function 'sched_tick_stop'
static inline void sched_tick_stop(int cpu) { }
^
>> kernel/sched/core.c:4990:20: warning: unused function 'sched_core_cpu_starting'
static inline void sched_core_cpu_starting(unsigned int cpu) {}
^
fatal error: error in backend: Nested variants found in inline asm string: ' .set push
.set noat
.set push
.set arch=r4000
.if ( 0x00 ) != -1)) 0x00 ) != -1)) : ($( static struct ftrace_branch_data __attribute__((__aligned__(4))) __attribute__((__section__("_ftrace_branch"))) __if_trace = $( .func = __func__, .file = "arch/mips/include/asm/cmpxchg.h", .line = 163, $); 0x00 ) != -1)) : $))) ) && ( 0 ); .set push; .set mips64r2; .rept 1; sync 0x00; .endr; .set pop; .else; ; .endif
1: ll $0, $2 # __cmpxchg_asm
bne $0, ${3:z}, 2f
.set pop
move $$1, ${4:z}
.set arch=r4000
sc $$1, $1
beqz $$1, 1b
.set pop
2: .if ( 0x00 ) != -1)) 0x00 ) != -1)) : ($( static struct ftrace_branch_data __attribute__((__aligned__(4))) __attribute__((__section__("_ftrace_branch"))) __if_trace = $( .func = __func__, .file = "arch/mips/include/asm/cmpxchg.h", .line = 163, $); 0x00 ) != -1)) : $))) ) && ( 0 ); .set push; .set mips64r2; .rept 1; sync 0x00; .endr; .set pop; .else; ; .endif
'
clang-12: error: clang frontend command failed with exit code 70 (use -v to see invocation)
clang version 12.0.0 (git://gitmirror/llvm_project dfcf1acf13226be0f599a7ab6b395b66dc9545d6)
Target: mipsel-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/cross/clang-dfcf1acf13/bin
clang-12: note: diagnostic msg:
Makefile arch include kernel scripts source usr
vim +/sched_core_cpu_starting +4990 kernel/sched/core.c
4989
> 4990 static inline void sched_core_cpu_starting(unsigned int cpu) {}
4991
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 months, 3 weeks
[dhowells-fs:fscache-iter 71/76] fs/afs/write.c:27: undefined reference to `fscache_set_page_dirty'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git fscache-iter
head: 0c2be522212c09d559c835fa6da546a2d4606069
commit: 40bc51b4b1b4ddcf601a1b0320a4770430f2ee9a [71/76] afs: Copy local writes to the cache when writing to the server
config: i386-randconfig-a004-20201130 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/com...
git remote add dhowells-fs https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
git fetch --no-tags dhowells-fs fscache-iter
git checkout 40bc51b4b1b4ddcf601a1b0320a4770430f2ee9a
# 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 >>):
ld: fs/afs/write.o: in function `afs_set_page_dirty':
>> fs/afs/write.c:27: undefined reference to `fscache_set_page_dirty'
ld: fs/afs/write.o: in function `fscache_write_to_cache':
>> include/linux/fscache.h:654: undefined reference to `__fscache_write_to_cache'
ld: fs/afs/write.o: in function `fscache_clear_page_bits':
>> include/linux/fscache.h:644: undefined reference to `__fscache_clear_page_bits'
vim +27 fs/afs/write.c
17
18 static void afs_write_to_cache(struct afs_vnode *vnode, loff_t start, size_t len,
19 loff_t i_size);
20
21 /*
22 * Mark a page as having been made dirty and thus needing writeback. We also
23 * need to pin the cache object to write back to.
24 */
25 int afs_set_page_dirty(struct page *page)
26 {
> 27 return fscache_set_page_dirty(page, afs_vnode_cache(AFS_FS_I(page->mapping->host)));
28 }
29
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 months, 3 weeks
[soc:mediatek/drivers 19/19] mtk-mmsys.c:undefined reference to `devm_platform_ioremap_resource'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git mediatek/drivers
head: cc6576029aedc79ce87b9fcb22cbd396d47f2852
commit: cc6576029aedc79ce87b9fcb22cbd396d47f2852 [19/19] soc: mediatek: mmsys: Use devm_platform_ioremap_resource()
config: s390-randconfig-r022-20201130 (attached as .config)
compiler: s390-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
# https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git/commit/?id=cc...
git remote add soc https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git
git fetch --no-tags soc mediatek/drivers
git checkout cc6576029aedc79ce87b9fcb22cbd396d47f2852
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 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 >>):
ccu-sun50i-a100.c:(.text+0x28): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/clk/sunxi-ng/ccu-sun50i-h6.o: in function `sun50i_h6_ccu_probe':
ccu-sun50i-h6.c:(.text+0x3a): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/clk/sunxi-ng/ccu-sun8i-r40.o: in function `sun8i_r40_ccu_probe':
ccu-sun8i-r40.c:(.text+0x56): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/clk/ti/adpll.o: in function `ti_adpll_probe':
adpll.c:(.text+0xa24): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/dma-axi-dmac.o: in function `axi_dmac_probe':
dma-axi-dmac.c:(.text+0xf9c): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/coh901318.o: in function `coh901318_probe':
coh901318.c:(.init.text+0x144): undefined reference to `devm_ioremap'
s390-linux-ld: drivers/dma/dma-jz4780.o: in function `jz4780_dma_probe':
dma-jz4780.c:(.text+0x1150): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: dma-jz4780.c:(.text+0x118a): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/sa11x0-dma.o: in function `sa11x0_dma_remove':
sa11x0-dma.c:(.text+0x9f0): undefined reference to `iounmap'
s390-linux-ld: drivers/dma/sa11x0-dma.o: in function `sa11x0_dma_probe':
sa11x0-dma.c:(.text+0x112c): undefined reference to `ioremap'
s390-linux-ld: sa11x0-dma.c:(.text+0x1202): undefined reference to `iounmap'
s390-linux-ld: drivers/dma/sun6i-dma.o: in function `sun6i_dma_probe':
sun6i-dma.c:(.text+0x1652): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.o: in function `dw_probe':
dw-axi-dmac-platform.c:(.text+0x113c): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/dw/platform.o: in function `dw_probe':
platform.c:(.text+0xa6): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/dma/idma64.o: in function `idma64_platform_probe':
idma64.c:(.text+0xe5e): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/k3dma.o: in function `k3_dma_probe':
k3dma.c:(.text+0x16a0): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/dma/milbeaut-hdmac.o: in function `milbeaut_hdmac_probe':
milbeaut-hdmac.c:(.text+0xbd2): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/dma/mxs-dma.o: in function `mxs_dma_probe':
mxs-dma.c:(.init.text+0xd4): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/nbpfaxi.o: in function `nbpf_probe':
nbpfaxi.c:(.text+0x1832): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/sh/rcar-dmac.o: in function `rcar_dmac_probe':
rcar-dmac.c:(.text+0x1f88): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/dma/stm32-dma.o: in function `stm32_dma_probe':
stm32-dma.c:(.text+0x11e4): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/stm32-dmamux.o: in function `stm32_dmamux_probe':
stm32-dmamux.c:(.text+0x458): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/stm32-mdma.o: in function `stm32_mdma_probe':
stm32-mdma.c:(.text+0x1a2c): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/sprd-dma.o: in function `sprd_dma_probe':
sprd-dma.c:(.text+0xd22): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/dma/tegra210-adma.o: in function `tegra_adma_probe':
tegra210-adma.c:(.text+0xc56): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/timb_dma.o: in function `td_remove':
timb_dma.c:(.text+0x13e): undefined reference to `iounmap'
s390-linux-ld: drivers/dma/timb_dma.o: in function `td_probe':
timb_dma.c:(.text+0xd96): undefined reference to `ioremap'
s390-linux-ld: timb_dma.c:(.text+0x1014): undefined reference to `iounmap'
s390-linux-ld: drivers/dma/zx_dma.o: in function `zx_dma_probe':
zx_dma.c:(.text+0x1414): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/dma/mediatek/mtk-hsdma.o: in function `mtk_hsdma_probe':
mtk-hsdma.c:(.text+0x40e): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/mediatek/mtk-cqdma.o: in function `mtk_cqdma_probe':
mtk-cqdma.c:(.text+0x127e): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/dma/qcom/hidma_mgmt.o: in function `hidma_mgmt_probe':
hidma_mgmt.c:(.text+0x20a): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/qcom/hidma_mgmt.o: in function `hidma_mgmt_init':
hidma_mgmt.c:(.init.text+0xd6): undefined reference to `of_address_to_resource'
s390-linux-ld: hidma_mgmt.c:(.init.text+0xee): undefined reference to `of_address_to_resource'
s390-linux-ld: drivers/dma/ti/omap-dma.o: in function `omap_dma_probe':
omap-dma.c:(.text+0x1864): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/dma/ti/dma-crossbar.o: in function `ti_dra7_xbar_probe':
dma-crossbar.c:(.text+0x41c): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/dma/ti/dma-crossbar.o: in function `ti_dma_xbar_probe':
dma-crossbar.c:(.text+0x6ac): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/soc/aspeed/aspeed-lpc-ctrl.o: in function `aspeed_lpc_ctrl_probe':
aspeed-lpc-ctrl.c:(.text+0x104): undefined reference to `of_address_to_resource'
s390-linux-ld: aspeed-lpc-ctrl.c:(.text+0x16a): undefined reference to `of_address_to_resource'
s390-linux-ld: drivers/soc/bcm/brcmstb/common.o: in function `brcmstb_soc_device_early_init':
common.c:(.init.text+0x1aa): undefined reference to `of_iomap'
s390-linux-ld: common.c:(.init.text+0x1d6): undefined reference to `iounmap'
s390-linux-ld: drivers/soc/bcm/brcmstb/biuctrl.o: in function `brcmstb_biuctrl_init':
biuctrl.c:(.init.text+0x122): undefined reference to `of_iomap'
s390-linux-ld: drivers/soc/fsl/dpaa2-console.o: in function `dpaa2_console_close':
dpaa2-console.c:(.text+0x74): undefined reference to `iounmap'
s390-linux-ld: drivers/soc/fsl/dpaa2-console.o: in function `dpaa2_console_probe':
dpaa2-console.c:(.text+0xd8): undefined reference to `of_address_to_resource'
s390-linux-ld: drivers/soc/fsl/dpaa2-console.o: in function `dpaa2_generic_console_open.isra.0.constprop.0':
dpaa2-console.c:(.text+0x378): undefined reference to `ioremap'
s390-linux-ld: dpaa2-console.c:(.text+0x3a0): undefined reference to `iounmap'
s390-linux-ld: dpaa2-console.c:(.text+0x3b4): undefined reference to `ioremap'
s390-linux-ld: dpaa2-console.c:(.text+0x40a): undefined reference to `iounmap'
s390-linux-ld: drivers/soc/imx/soc-imx8m.o: in function `imx8mq_soc_revision':
soc-imx8m.c:(.init.text+0x46): undefined reference to `of_iomap'
s390-linux-ld: soc-imx8m.c:(.init.text+0x7e): undefined reference to `iounmap'
s390-linux-ld: drivers/soc/imx/soc-imx8m.o: in function `imx8mm_soc_revision':
soc-imx8m.c:(.init.text+0xea): undefined reference to `of_iomap'
s390-linux-ld: soc-imx8m.c:(.init.text+0xf8): undefined reference to `iounmap'
s390-linux-ld: soc-imx8m.c:(.init.text+0x144): undefined reference to `of_iomap'
s390-linux-ld: soc-imx8m.c:(.init.text+0x172): undefined reference to `iounmap'
s390-linux-ld: drivers/soc/mediatek/mtk-pmic-wrap.o: in function `pwrap_probe':
mtk-pmic-wrap.c:(.text+0x13f6): undefined reference to `devm_ioremap_resource'
s390-linux-ld: mtk-pmic-wrap.c:(.text+0x1482): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/soc/mediatek/mtk-scpsys.o: in function `scpsys_probe':
mtk-scpsys.c:(.text+0x5ae): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/soc/mediatek/mtk-mmsys.o: in function `mtk_mmsys_probe':
>> mtk-mmsys.c:(.text+0x30c): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/soc/amlogic/meson-canvas.o: in function `meson_canvas_probe':
meson-canvas.c:(.text+0x5e): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/soc/qcom/cmd-db.o: in function `cmd_db_dev_probe':
cmd-db.c:(.text+0x7a): undefined reference to `memremap'
s390-linux-ld: drivers/soc/qcom/qcom_gsbi.o: in function `gsbi_probe':
qcom_gsbi.c:(.text+0xf4): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/soc/qcom/rpmh-rsc.o: in function `rpmh_rsc_probe':
rpmh-rsc.c:(.text+0x342): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/soc/qcom/llcc-qcom.o: in function `qcom_llcc_init_mmio':
llcc-qcom.c:(.text+0x18a): undefined reference to `devm_platform_ioremap_resource_byname'
s390-linux-ld: drivers/soc/samsung/pm_domains.o: in function `exynos4_pm_init_power_domain':
pm_domains.c:(.init.text+0x114): undefined reference to `of_iomap'
s390-linux-ld: drivers/reset/reset-ath79.o: in function `ath79_reset_probe':
reset-ath79.c:(.text+0xdc): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/reset/reset-lpc18xx.o: in function `lpc18xx_rgu_probe':
reset-lpc18xx.c:(.text+0x27e): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/reset/reset-meson-audio-arb.o: in function `meson_audio_arb_probe':
reset-meson-audio-arb.c:(.text+0x18a): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/reset/reset-npcm.o: in function `npcm_rc_probe':
reset-npcm.c:(.text+0x154): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/reset/reset-qcom-aoss.o: in function `qcom_aoss_reset_probe':
reset-qcom-aoss.c:(.text+0x178): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/reset/reset-qcom-pdc.o: in function `qcom_pdc_reset_probe':
reset-qcom-pdc.c:(.text+0x5e): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/reset/reset-simple.o: in function `reset_simple_probe':
reset-simple.c:(.text+0x138): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/reset/reset-sunxi.o: in function `sun6i_reset_init':
reset-sunxi.c:(.init.text+0x6c): undefined reference to `of_address_to_resource'
s390-linux-ld: reset-sunxi.c:(.init.text+0xba): undefined reference to `ioremap'
s390-linux-ld: drivers/reset/reset-uniphier-glue.o: in function `uniphier_glue_reset_probe':
reset-uniphier-glue.c:(.text+0x94): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/char/hw_random/meson-rng.o: in function `meson_rng_probe':
meson-rng.c:(.text+0x6a): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/char/hw_random/mtk-rng.o: in function `mtk_rng_probe':
mtk-rng.c:(.text+0xac): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/iommu/arm/arm-smmu/qcom_iommu.o: in function `qcom_iommu_device_probe':
qcom_iommu.c:(.text+0x22e): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/iommu/arm/arm-smmu/qcom_iommu.o: in function `qcom_iommu_ctx_probe':
qcom_iommu.c:(.text+0x3ce): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/iommu/arm/arm-smmu/arm-smmu.o: in function `arm_smmu_device_probe':
arm-smmu.c:(.text+0x20aa): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/iommu/arm/arm-smmu/arm-smmu-nvidia.o: in function `nvidia_smmu_impl_init':
arm-smmu-nvidia.c:(.text+0x3bc): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/iommu/ipmmu-vmsa.o: in function `ipmmu_probe':
ipmmu-vmsa.c:(.text+0x924): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/iommu/mtk_iommu.o:mtk_iommu.c:(.text+0x5f6): more undefined references to `devm_ioremap_resource' follow
s390-linux-ld: drivers/mfd/syscon.o: in function `syscon_probe':
syscon.c:(.text+0xc0): undefined reference to `devm_ioremap'
s390-linux-ld: drivers/mfd/syscon.o: in function `of_syscon_register':
syscon.c:(.text+0x1bc): undefined reference to `of_address_to_resource'
s390-linux-ld: syscon.c:(.text+0x1f6): undefined reference to `ioremap'
s390-linux-ld: syscon.c:(.text+0x340): undefined reference to `iounmap'
s390-linux-ld: drivers/mtd/nand/raw/denali_dt.o: in function `denali_dt_probe':
denali_dt.c:(.text+0x1bc): undefined reference to `devm_ioremap_resource'
s390-linux-ld: denali_dt.c:(.text+0x1fc): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/mtd/nand/raw/mxic_nand.o: in function `mxic_nfc_probe':
mxic_nand.c:(.text+0x7ee): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/mtd/nand/raw/stm32_fmc2_nand.o: in function `stm32_fmc2_nfc_probe':
stm32_fmc2_nand.c:(.text+0x11b8): undefined reference to `of_address_to_resource'
s390-linux-ld: stm32_fmc2_nand.c:(.text+0x1378): undefined reference to `devm_ioremap_resource'
s390-linux-ld: stm32_fmc2_nand.c:(.text+0x13ba): undefined reference to `devm_ioremap_resource'
s390-linux-ld: stm32_fmc2_nand.c:(.text+0x13f0): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/mtd/nand/raw/meson_nand.o: in function `meson_nfc_probe':
meson_nand.c:(.text+0x1362): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/net/can/sun4i_can.o: in function `sun4ican_probe':
sun4i_can.c:(.text+0x36a): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/input/serio/olpc_apsp.o: in function `olpc_apsp_probe':
olpc_apsp.c:(.text+0xdc): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/input/keyboard/bcm-keypad.o: in function `bcm_kp_probe':
bcm-keypad.c:(.text+0x696): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/input/keyboard/ep93xx_keypad.o: in function `ep93xx_keypad_remove':
ep93xx_keypad.c:(.text+0xb4): undefined reference to `iounmap'
s390-linux-ld: drivers/input/keyboard/ep93xx_keypad.o: in function `ep93xx_keypad_probe':
ep93xx_keypad.c:(.text+0x29c): undefined reference to `ioremap'
s390-linux-ld: ep93xx_keypad.c:(.text+0x3c6): undefined reference to `iounmap'
s390-linux-ld: drivers/input/keyboard/goldfish_events.o: in function `events_probe':
goldfish_events.c:(.text+0x182): undefined reference to `devm_ioremap'
s390-linux-ld: drivers/input/keyboard/omap4-keypad.o: in function `omap4_keypad_remove':
omap4-keypad.c:(.text+0x4c): undefined reference to `iounmap'
s390-linux-ld: drivers/input/keyboard/omap4-keypad.o: in function `omap4_keypad_probe':
omap4-keypad.c:(.text+0x1aa): undefined reference to `ioremap'
s390-linux-ld: omap4-keypad.c:(.text+0x1bc): undefined reference to `iounmap'
s390-linux-ld: drivers/input/keyboard/sh_keysc.o: in function `sh_keysc_remove':
sh_keysc.c:(.text+0xc4): undefined reference to `iounmap'
s390-linux-ld: drivers/input/keyboard/sh_keysc.o: in function `sh_keysc_probe':
sh_keysc.c:(.text+0x1e0): undefined reference to `ioremap'
s390-linux-ld: sh_keysc.c:(.text+0x2e4): undefined reference to `iounmap'
s390-linux-ld: drivers/input/keyboard/st-keyscan.o: in function `keyscan_probe':
st-keyscan.c:(.text+0x2f8): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/media/cec/platform/s5p/s5p_cec.o: in function `s5p_cec_probe':
s5p_cec.c:(.text+0x384): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/media/cec/platform/tegra/tegra_cec.o: in function `tegra_cec_probe':
tegra_cec.c:(.text+0x296): undefined reference to `devm_ioremap'
s390-linux-ld: drivers/power/reset/brcm-kona-reset.o: in function `kona_reset_probe':
brcm-kona-reset.c:(.text+0x62): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/thermal/tango_thermal.o: in function `tango_thermal_probe':
tango_thermal.c:(.text+0x5e): undefined reference to `devm_ioremap_resource'
s390-linux-ld: drivers/thermal/imx8mm_thermal.o: in function `imx8mm_tmu_probe':
imx8mm_thermal.c:(.text+0x1ee): undefined reference to `devm_platform_ioremap_resource'
s390-linux-ld: drivers/thermal/zx2967_thermal.o: in function `zx2967_thermal_probe':
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 months, 3 weeks
[linux-rt-devel:linux-5.10.y-rt-rebase 76/252] kernel/printk/printk.c:1899:2: warning: function 'printk_sprint' might be a candidate for 'gnu_printf' format attribute
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git linux-5.10.y-rt-rebase
head: f0e8c5cc07c1ff61f3e3f0cdc67ebbaba3efba35
commit: 2f0edafd96943679520f78dce1407be69dd636c8 [76/252] printk: remove logbuf_lock, add syslog_lock
config: xtensa-allyesconfig (attached as .config)
compiler: xtensa-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
# https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git/com...
git remote add linux-rt-devel https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git
git fetch --no-tags linux-rt-devel linux-5.10.y-rt-rebase
git checkout 2f0edafd96943679520f78dce1407be69dd636c8
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=xtensa
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 >>):
kernel/printk/printk.c: In function 'printk_sprint':
>> kernel/printk/printk.c:1899:2: warning: function 'printk_sprint' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
1899 | text_len = vscnprintf(text, size, fmt, args);
| ^~~~~~~~
vim +1899 kernel/printk/printk.c
1892
1893 static u16 printk_sprint(char *text, u16 size, int facility, enum log_flags *lflags,
1894 const char *fmt, va_list args)
1895 {
1896 char *orig_text = text;
1897 u16 text_len;
1898
> 1899 text_len = vscnprintf(text, size, fmt, args);
1900
1901 /* Mark and strip a trailing newline. */
1902 if (text_len && text[text_len - 1] == '\n') {
1903 text_len--;
1904 *lflags |= LOG_NEWLINE;
1905 }
1906
1907 /* Strip kernel syslog prefix. */
1908 if (facility == 0) {
1909 while (text_len >= 2 && printk_get_level(text)) {
1910 text_len -= 2;
1911 text += 2;
1912 }
1913
1914 if (text != orig_text)
1915 memmove(orig_text, text, text_len);
1916 }
1917
1918 return text_len;
1919 }
1920
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 months, 3 weeks
Re: [RFC PATCH 3/3] KVM: arm64: Add usage of stage 2 fault lookup level in user_mem_abort()
by kernel test robot
Hi Yanan,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on kvmarm/next]
[also build test ERROR on arm64/for-next/core linux/master linus/master v5.10-rc6 next-20201130]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Yanan-Wang/Fix-several-bugs-in-K...
base: https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git next
config: arm64-allyesconfig (attached as .config)
compiler: aarch64-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
# https://github.com/0day-ci/linux/commit/3f926cff86d61ffd0145d3fadf339230b...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Yanan-Wang/Fix-several-bugs-in-KVM-stage-2-translation/20201130-202556
git checkout 3f926cff86d61ffd0145d3fadf339230b41d8994
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
In file included from arch/arm64/kvm/arm.c:37:
arch/arm64/include/asm/kvm_emulate.h: In function 'kvm_vcpu_trap_get_fault_level':
>> arch/arm64/include/asm/kvm_emulate.h:339:29: error: invalid storage class for function 'kvm_vcpu_abt_issea'
339 | static __always_inline bool kvm_vcpu_abt_issea(const struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:358:28: error: invalid storage class for function 'kvm_vcpu_sys_get_rt'
358 | static __always_inline int kvm_vcpu_sys_get_rt(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:364:20: error: invalid storage class for function 'kvm_is_write_fault'
364 | static inline bool kvm_is_write_fault(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:375:29: error: invalid storage class for function 'kvm_vcpu_get_mpidr_aff'
375 | static inline unsigned long kvm_vcpu_get_mpidr_aff(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:380:20: error: invalid storage class for function 'kvm_vcpu_set_be'
380 | static inline void kvm_vcpu_set_be(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:391:20: error: invalid storage class for function 'kvm_vcpu_is_be'
391 | static inline bool kvm_vcpu_is_be(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:399:29: error: invalid storage class for function 'vcpu_data_guest_to_host'
399 | static inline unsigned long vcpu_data_guest_to_host(struct kvm_vcpu *vcpu,
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:430:29: error: invalid storage class for function 'vcpu_data_host_to_guest'
430 | static inline unsigned long vcpu_data_host_to_guest(struct kvm_vcpu *vcpu,
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:461:29: error: invalid storage class for function 'kvm_incr_pc'
461 | static __always_inline void kvm_incr_pc(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~
In file included from arch/arm64/kvm/arm.c:40:
>> include/kvm/arm_hypercalls.h:11:19: error: invalid storage class for function 'smccc_get_function'
11 | static inline u32 smccc_get_function(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~
>> include/kvm/arm_hypercalls.h:16:29: error: invalid storage class for function 'smccc_get_arg1'
16 | static inline unsigned long smccc_get_arg1(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~
>> include/kvm/arm_hypercalls.h:21:29: error: invalid storage class for function 'smccc_get_arg2'
21 | static inline unsigned long smccc_get_arg2(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~
>> include/kvm/arm_hypercalls.h:26:29: error: invalid storage class for function 'smccc_get_arg3'
26 | static inline unsigned long smccc_get_arg3(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~
>> include/kvm/arm_hypercalls.h:31:20: error: invalid storage class for function 'smccc_set_retval'
31 | static inline void smccc_set_retval(struct kvm_vcpu *vcpu,
| ^~~~~~~~~~~~~~~~
In file included from arch/arm64/kvm/arm.c:42:
>> include/kvm/arm_psci.h:23:19: error: invalid storage class for function 'kvm_psci_version'
23 | static inline int kvm_psci_version(struct kvm_vcpu *vcpu, struct kvm *kvm)
| ^~~~~~~~~~~~~~~~
In file included from include/asm-generic/percpu.h:7,
from arch/arm64/include/asm/percpu.h:242,
from arch/arm64/include/asm/smp.h:28,
from include/linux/smp.h:85,
from include/linux/lockdep.h:14,
from include/linux/mutex.h:17,
from include/linux/notifier.h:14,
from include/linux/cpu_pm.h:13,
from arch/arm64/kvm/arm.c:8:
>> include/linux/percpu-defs.h:87:33: error: section attribute cannot be specified for local variables
87 | extern __PCPU_DUMMY_ATTRS char __pcpu_scope_##name; \
| ^~~~~~~~~~~~~
include/linux/percpu-defs.h:112:2: note: in expansion of macro 'DECLARE_PER_CPU_SECTION'
112 | DECLARE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/arm64/include/asm/kvm_asm.h:77:2: note: in expansion of macro 'DECLARE_PER_CPU'
77 | DECLARE_PER_CPU(type, sym)
| ^~~~~~~~~~~~~~~
arch/arm64/include/asm/kvm_asm.h:82:2: note: in expansion of macro 'DECLARE_KVM_VHE_PER_CPU'
82 | DECLARE_KVM_VHE_PER_CPU(type, sym); \
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:48:1: note: in expansion of macro 'DECLARE_KVM_HYP_PER_CPU'
48 | DECLARE_KVM_HYP_PER_CPU(unsigned long, kvm_hyp_vector);
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/kvm/arm.c:48:40: error: section attribute cannot be specified for local variables
48 | DECLARE_KVM_HYP_PER_CPU(unsigned long, kvm_hyp_vector);
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:88:44: note: in definition of macro 'DECLARE_PER_CPU_SECTION'
88 | extern __PCPU_ATTRS(sec) __typeof__(type) name
| ^~~~
arch/arm64/include/asm/kvm_asm.h:77:2: note: in expansion of macro 'DECLARE_PER_CPU'
77 | DECLARE_PER_CPU(type, sym)
| ^~~~~~~~~~~~~~~
arch/arm64/include/asm/kvm_asm.h:82:2: note: in expansion of macro 'DECLARE_KVM_VHE_PER_CPU'
82 | DECLARE_KVM_VHE_PER_CPU(type, sym); \
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:48:1: note: in expansion of macro 'DECLARE_KVM_HYP_PER_CPU'
48 | DECLARE_KVM_HYP_PER_CPU(unsigned long, kvm_hyp_vector);
| ^~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/percpu-defs.h:87:33: error: section attribute cannot be specified for local variables
87 | extern __PCPU_DUMMY_ATTRS char __pcpu_scope_##name; \
| ^~~~~~~~~~~~~
include/linux/percpu-defs.h:112:2: note: in expansion of macro 'DECLARE_PER_CPU_SECTION'
112 | DECLARE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/arm64/include/asm/kvm_asm.h:79:2: note: in expansion of macro 'DECLARE_PER_CPU'
79 | DECLARE_PER_CPU(type, kvm_nvhe_sym(sym))
| ^~~~~~~~~~~~~~~
arch/arm64/include/asm/kvm_asm.h:83:2: note: in expansion of macro 'DECLARE_KVM_NVHE_PER_CPU'
83 | DECLARE_KVM_NVHE_PER_CPU(type, sym)
| ^~~~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:48:1: note: in expansion of macro 'DECLARE_KVM_HYP_PER_CPU'
48 | DECLARE_KVM_HYP_PER_CPU(unsigned long, kvm_hyp_vector);
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/hyp_image.h:14:27: error: section attribute cannot be specified for local variables
14 | #define kvm_nvhe_sym(sym) __kvm_nvhe_##sym
| ^~~~~~~~~~~
include/linux/percpu-defs.h:88:44: note: in definition of macro 'DECLARE_PER_CPU_SECTION'
88 | extern __PCPU_ATTRS(sec) __typeof__(type) name
| ^~~~
arch/arm64/include/asm/kvm_asm.h:79:2: note: in expansion of macro 'DECLARE_PER_CPU'
79 | DECLARE_PER_CPU(type, kvm_nvhe_sym(sym))
| ^~~~~~~~~~~~~~~
arch/arm64/include/asm/kvm_asm.h:79:24: note: in expansion of macro 'kvm_nvhe_sym'
79 | DECLARE_PER_CPU(type, kvm_nvhe_sym(sym))
| ^~~~~~~~~~~~
arch/arm64/include/asm/kvm_asm.h:83:2: note: in expansion of macro 'DECLARE_KVM_NVHE_PER_CPU'
83 | DECLARE_KVM_NVHE_PER_CPU(type, sym)
| ^~~~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:48:1: note: in expansion of macro 'DECLARE_KVM_HYP_PER_CPU'
48 | DECLARE_KVM_HYP_PER_CPU(unsigned long, kvm_hyp_vector);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:92:33: error: section attribute cannot be specified for local variables
92 | extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
115 | DEFINE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:93:26: error: section attribute cannot be specified for local variables
93 | __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
115 | DEFINE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
>> include/linux/percpu-defs.h:93:26: error: declaration of '__pcpu_unique_kvm_arm_hyp_stack_page' with no linkage follows extern declaration
93 | __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
115 | DEFINE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:92:33: note: previous declaration of '__pcpu_unique_kvm_arm_hyp_stack_page' was here
92 | extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
115 | DEFINE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:38: error: section attribute cannot be specified for local variables
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:94:44: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
94 | extern __PCPU_ATTRS(sec) __typeof__(type) name; \
| ^~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:38: error: section attribute cannot be specified for local variables
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:95:44: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
95 | __PCPU_ATTRS(sec) __weak __typeof__(type) name
| ^~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:38: error: weak declaration of 'kvm_arm_hyp_stack_page' must be public
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:95:44: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
95 | __PCPU_ATTRS(sec) __weak __typeof__(type) name
| ^~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:38: error: declaration of 'kvm_arm_hyp_stack_page' with no linkage follows extern declaration
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:95:44: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
95 | __PCPU_ATTRS(sec) __weak __typeof__(type) name
| ^~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:50:38: note: previous declaration of 'kvm_arm_hyp_stack_page' was here
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:94:44: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
94 | extern __PCPU_ATTRS(sec) __typeof__(type) name; \
| ^~~~
arch/arm64/kvm/arm.c:50:8: note: in expansion of macro 'DEFINE_PER_CPU'
50 | static DEFINE_PER_CPU(unsigned long, kvm_arm_hyp_stack_page);
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:92:33: error: section attribute cannot be specified for local variables
92 | extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
115 | DEFINE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:60:8: note: in expansion of macro 'DEFINE_PER_CPU'
60 | static DEFINE_PER_CPU(unsigned char, kvm_arm_hardware_enabled);
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:93:26: error: section attribute cannot be specified for local variables
93 | __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
115 | DEFINE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:60:8: note: in expansion of macro 'DEFINE_PER_CPU'
60 | static DEFINE_PER_CPU(unsigned char, kvm_arm_hardware_enabled);
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:93:26: error: declaration of '__pcpu_unique_kvm_arm_hardware_enabled' with no linkage follows extern declaration
93 | __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
115 | DEFINE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:60:8: note: in expansion of macro 'DEFINE_PER_CPU'
60 | static DEFINE_PER_CPU(unsigned char, kvm_arm_hardware_enabled);
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:92:33: note: previous declaration of '__pcpu_unique_kvm_arm_hardware_enabled' was here
92 | extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
| ^~~~~~~~~~~~~~
include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
115 | DEFINE_PER_CPU_SECTION(type, name, "")
| ^~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:60:8: note: in expansion of macro 'DEFINE_PER_CPU'
60 | static DEFINE_PER_CPU(unsigned char, kvm_arm_hardware_enabled);
| ^~~~~~~~~~~~~~
arch/arm64/kvm/arm.c:60:38: error: section attribute cannot be specified for local variables
60 | static DEFINE_PER_CPU(unsigned char, kvm_arm_hardware_enabled);
--
In file included from arch/arm64/kvm/mmu.c:20:
arch/arm64/include/asm/kvm_emulate.h: In function 'kvm_vcpu_trap_get_fault_level':
>> arch/arm64/include/asm/kvm_emulate.h:339:29: error: invalid storage class for function 'kvm_vcpu_abt_issea'
339 | static __always_inline bool kvm_vcpu_abt_issea(const struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:358:28: error: invalid storage class for function 'kvm_vcpu_sys_get_rt'
358 | static __always_inline int kvm_vcpu_sys_get_rt(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:364:20: error: invalid storage class for function 'kvm_is_write_fault'
364 | static inline bool kvm_is_write_fault(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:375:29: error: invalid storage class for function 'kvm_vcpu_get_mpidr_aff'
375 | static inline unsigned long kvm_vcpu_get_mpidr_aff(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:380:20: error: invalid storage class for function 'kvm_vcpu_set_be'
380 | static inline void kvm_vcpu_set_be(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:391:20: error: invalid storage class for function 'kvm_vcpu_is_be'
391 | static inline bool kvm_vcpu_is_be(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:399:29: error: invalid storage class for function 'vcpu_data_guest_to_host'
399 | static inline unsigned long vcpu_data_guest_to_host(struct kvm_vcpu *vcpu,
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:430:29: error: invalid storage class for function 'vcpu_data_host_to_guest'
430 | static inline unsigned long vcpu_data_host_to_guest(struct kvm_vcpu *vcpu,
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/kvm_emulate.h:461:29: error: invalid storage class for function 'kvm_incr_pc'
461 | static __always_inline void kvm_incr_pc(struct kvm_vcpu *vcpu)
| ^~~~~~~~~~~
In file included from include/trace/events/kvm.h:5,
from arch/arm64/kvm/mmu.c:12:
include/linux/tracepoint.h:237:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
237 | extern struct tracepoint __tracepoint_##name; \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:14:1: note: in expansion of macro 'TRACE_EVENT'
14 | TRACE_EVENT(kvm_entry,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:238:21: error: invalid storage class for function 'trace_kvm_entry'
238 | static inline void trace_##name(proto) \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:14:1: note: in expansion of macro 'TRACE_EVENT'
14 | TRACE_EVENT(kvm_entry,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:210:21: error: invalid storage class for function 'trace_kvm_entry_rcuidle'
210 | static inline void trace_##name##_rcuidle(proto) \
| ^~~~~~
include/linux/tracepoint.h:251:2: note: in expansion of macro '__DECLARE_TRACE_RCU'
251 | __DECLARE_TRACE_RCU(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:14:1: note: in expansion of macro 'TRACE_EVENT'
14 | TRACE_EVENT(kvm_entry,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:254:2: error: invalid storage class for function 'register_trace_kvm_entry'
254 | register_trace_##name(void (*probe)(data_proto), void *data) \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:14:1: note: in expansion of macro 'TRACE_EVENT'
14 | TRACE_EVENT(kvm_entry,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:260:2: error: invalid storage class for function 'register_trace_prio_kvm_entry'
260 | register_trace_prio_##name(void (*probe)(data_proto), void *data,\
| ^~~~~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:14:1: note: in expansion of macro 'TRACE_EVENT'
14 | TRACE_EVENT(kvm_entry,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:267:2: error: invalid storage class for function 'unregister_trace_kvm_entry'
267 | unregister_trace_##name(void (*probe)(data_proto), void *data) \
| ^~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:14:1: note: in expansion of macro 'TRACE_EVENT'
14 | TRACE_EVENT(kvm_entry,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:273:2: error: invalid storage class for function 'check_trace_callback_type_kvm_entry'
273 | check_trace_callback_type_##name(void (*cb)(data_proto)) \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:14:1: note: in expansion of macro 'TRACE_EVENT'
14 | TRACE_EVENT(kvm_entry,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:277:2: error: invalid storage class for function 'trace_kvm_entry_enabled'
277 | trace_##name##_enabled(void) \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:14:1: note: in expansion of macro 'TRACE_EVENT'
14 | TRACE_EVENT(kvm_entry,
| ^~~~~~~~~~~
include/linux/tracepoint.h:235:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
235 | extern int __traceiter_##name(data_proto); \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
include/linux/tracepoint.h:237:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
237 | extern struct tracepoint __tracepoint_##name; \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:238:21: error: invalid storage class for function 'trace_kvm_exit'
238 | static inline void trace_##name(proto) \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:210:21: error: invalid storage class for function 'trace_kvm_exit_rcuidle'
210 | static inline void trace_##name##_rcuidle(proto) \
| ^~~~~~
include/linux/tracepoint.h:251:2: note: in expansion of macro '__DECLARE_TRACE_RCU'
251 | __DECLARE_TRACE_RCU(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:254:2: error: invalid storage class for function 'register_trace_kvm_exit'
254 | register_trace_##name(void (*probe)(data_proto), void *data) \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
>> include/linux/tracepoint.h:260:2: error: invalid storage class for function 'register_trace_prio_kvm_exit'
260 | register_trace_prio_##name(void (*probe)(data_proto), void *data,\
| ^~~~~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
include/linux/tracepoint.h:267:2: error: invalid storage class for function 'unregister_trace_kvm_exit'
267 | unregister_trace_##name(void (*probe)(data_proto), void *data) \
| ^~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
include/linux/tracepoint.h:273:2: error: invalid storage class for function 'check_trace_callback_type_kvm_exit'
273 | check_trace_callback_type_##name(void (*cb)(data_proto)) \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
include/linux/tracepoint.h:277:2: error: invalid storage class for function 'trace_kvm_exit_enabled'
277 | trace_##name##_enabled(void) \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:29:1: note: in expansion of macro 'TRACE_EVENT'
29 | TRACE_EVENT(kvm_exit,
| ^~~~~~~~~~~
include/linux/tracepoint.h:235:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
235 | extern int __traceiter_##name(data_proto); \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:52:1: note: in expansion of macro 'TRACE_EVENT'
52 | TRACE_EVENT(kvm_guest_fault,
| ^~~~~~~~~~~
include/linux/tracepoint.h:237:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
237 | extern struct tracepoint __tracepoint_##name; \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:52:1: note: in expansion of macro 'TRACE_EVENT'
52 | TRACE_EVENT(kvm_guest_fault,
| ^~~~~~~~~~~
include/linux/tracepoint.h:238:21: error: invalid storage class for function 'trace_kvm_guest_fault'
238 | static inline void trace_##name(proto) \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:52:1: note: in expansion of macro 'TRACE_EVENT'
52 | TRACE_EVENT(kvm_guest_fault,
| ^~~~~~~~~~~
include/linux/tracepoint.h:210:21: error: invalid storage class for function 'trace_kvm_guest_fault_rcuidle'
210 | static inline void trace_##name##_rcuidle(proto) \
| ^~~~~~
include/linux/tracepoint.h:251:2: note: in expansion of macro '__DECLARE_TRACE_RCU'
251 | __DECLARE_TRACE_RCU(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
arch/arm64/kvm/trace_arm.h:52:1: note: in expansion of macro 'TRACE_EVENT'
52 | TRACE_EVENT(kvm_guest_fault,
| ^~~~~~~~~~~
include/linux/tracepoint.h:254:2: error: invalid storage class for function 'register_trace_kvm_guest_fault'
254 | register_trace_##name(void (*probe)(data_proto), void *data) \
..
vim +/kvm_vcpu_abt_issea +339 arch/arm64/include/asm/kvm_emulate.h
3f926cff86d61ff Yanan Wang 2020-11-30 338
c9a636f29b5f236 Will Deacon 2020-07-29 @339 static __always_inline bool kvm_vcpu_abt_issea(const struct kvm_vcpu *vcpu)
bb428921b777a5e James Morse 2017-07-18 340 {
a2b83133339067c Dongjiu Geng 2017-10-30 341 switch (kvm_vcpu_trap_get_fault(vcpu)) {
bb428921b777a5e James Morse 2017-07-18 342 case FSC_SEA:
bb428921b777a5e James Morse 2017-07-18 343 case FSC_SEA_TTW0:
bb428921b777a5e James Morse 2017-07-18 344 case FSC_SEA_TTW1:
bb428921b777a5e James Morse 2017-07-18 345 case FSC_SEA_TTW2:
bb428921b777a5e James Morse 2017-07-18 346 case FSC_SEA_TTW3:
bb428921b777a5e James Morse 2017-07-18 347 case FSC_SECC:
bb428921b777a5e James Morse 2017-07-18 348 case FSC_SECC_TTW0:
bb428921b777a5e James Morse 2017-07-18 349 case FSC_SECC_TTW1:
bb428921b777a5e James Morse 2017-07-18 350 case FSC_SECC_TTW2:
bb428921b777a5e James Morse 2017-07-18 351 case FSC_SECC_TTW3:
bb428921b777a5e James Morse 2017-07-18 352 return true;
bb428921b777a5e James Morse 2017-07-18 353 default:
bb428921b777a5e James Morse 2017-07-18 354 return false;
bb428921b777a5e James Morse 2017-07-18 355 }
bb428921b777a5e James Morse 2017-07-18 356 }
bb428921b777a5e James Morse 2017-07-18 357
5c37f1ae1c33580 James Morse 2020-02-20 @358 static __always_inline int kvm_vcpu_sys_get_rt(struct kvm_vcpu *vcpu)
c667186f1c01ca8 Marc Zyngier 2017-04-27 359 {
3a949f4c9354875 Gavin Shan 2020-06-30 360 u32 esr = kvm_vcpu_get_esr(vcpu);
1c8391412d7794e Anshuman Khandual 2018-09-20 361 return ESR_ELx_SYS64_ISS_RT(esr);
c667186f1c01ca8 Marc Zyngier 2017-04-27 362 }
c667186f1c01ca8 Marc Zyngier 2017-04-27 363
64cf98fa5544aee Christoffer Dall 2016-05-01 @364 static inline bool kvm_is_write_fault(struct kvm_vcpu *vcpu)
64cf98fa5544aee Christoffer Dall 2016-05-01 365 {
c4ad98e4b72cb5b Marc Zyngier 2020-09-15 366 if (kvm_vcpu_abt_iss1tw(vcpu))
c4ad98e4b72cb5b Marc Zyngier 2020-09-15 367 return true;
c4ad98e4b72cb5b Marc Zyngier 2020-09-15 368
64cf98fa5544aee Christoffer Dall 2016-05-01 369 if (kvm_vcpu_trap_is_iabt(vcpu))
64cf98fa5544aee Christoffer Dall 2016-05-01 370 return false;
64cf98fa5544aee Christoffer Dall 2016-05-01 371
64cf98fa5544aee Christoffer Dall 2016-05-01 372 return kvm_vcpu_dabt_iswrite(vcpu);
64cf98fa5544aee Christoffer Dall 2016-05-01 373 }
64cf98fa5544aee Christoffer Dall 2016-05-01 374
4429fc64b90368e Andre Przywara 2014-06-02 @375 static inline unsigned long kvm_vcpu_get_mpidr_aff(struct kvm_vcpu *vcpu)
79c648806f9034a Marc Zyngier 2013-10-18 376 {
8d404c4c2461375 Christoffer Dall 2016-03-16 377 return vcpu_read_sys_reg(vcpu, MPIDR_EL1) & MPIDR_HWID_BITMASK;
79c648806f9034a Marc Zyngier 2013-10-18 378 }
79c648806f9034a Marc Zyngier 2013-10-18 379
ce94fe93d566bf3 Marc Zyngier 2013-11-05 @380 static inline void kvm_vcpu_set_be(struct kvm_vcpu *vcpu)
ce94fe93d566bf3 Marc Zyngier 2013-11-05 381 {
8d404c4c2461375 Christoffer Dall 2016-03-16 382 if (vcpu_mode_is_32bit(vcpu)) {
256c0960b7b6453 Mark Rutland 2018-07-05 383 *vcpu_cpsr(vcpu) |= PSR_AA32_E_BIT;
8d404c4c2461375 Christoffer Dall 2016-03-16 384 } else {
8d404c4c2461375 Christoffer Dall 2016-03-16 385 u64 sctlr = vcpu_read_sys_reg(vcpu, SCTLR_EL1);
8d404c4c2461375 Christoffer Dall 2016-03-16 386 sctlr |= (1 << 25);
1975fa56f1c85f5 James Morse 2018-05-02 387 vcpu_write_sys_reg(vcpu, sctlr, SCTLR_EL1);
8d404c4c2461375 Christoffer Dall 2016-03-16 388 }
ce94fe93d566bf3 Marc Zyngier 2013-11-05 389 }
ce94fe93d566bf3 Marc Zyngier 2013-11-05 390
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 @391 static inline bool kvm_vcpu_is_be(struct kvm_vcpu *vcpu)
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 392 {
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 393 if (vcpu_mode_is_32bit(vcpu))
256c0960b7b6453 Mark Rutland 2018-07-05 394 return !!(*vcpu_cpsr(vcpu) & PSR_AA32_E_BIT);
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 395
8d404c4c2461375 Christoffer Dall 2016-03-16 396 return !!(vcpu_read_sys_reg(vcpu, SCTLR_EL1) & (1 << 25));
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 397 }
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 398
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 @399 static inline unsigned long vcpu_data_guest_to_host(struct kvm_vcpu *vcpu,
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 400 unsigned long data,
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 401 unsigned int len)
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 402 {
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 403 if (kvm_vcpu_is_be(vcpu)) {
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 404 switch (len) {
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 405 case 1:
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 406 return data & 0xff;
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 407 case 2:
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 408 return be16_to_cpu(data & 0xffff);
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 409 case 4:
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 410 return be32_to_cpu(data & 0xffffffff);
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 411 default:
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 412 return be64_to_cpu(data);
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 413 }
b30070862edbdb2 Victor Kamensky 2014-06-12 414 } else {
b30070862edbdb2 Victor Kamensky 2014-06-12 415 switch (len) {
b30070862edbdb2 Victor Kamensky 2014-06-12 416 case 1:
b30070862edbdb2 Victor Kamensky 2014-06-12 417 return data & 0xff;
b30070862edbdb2 Victor Kamensky 2014-06-12 418 case 2:
b30070862edbdb2 Victor Kamensky 2014-06-12 419 return le16_to_cpu(data & 0xffff);
b30070862edbdb2 Victor Kamensky 2014-06-12 420 case 4:
b30070862edbdb2 Victor Kamensky 2014-06-12 421 return le32_to_cpu(data & 0xffffffff);
b30070862edbdb2 Victor Kamensky 2014-06-12 422 default:
b30070862edbdb2 Victor Kamensky 2014-06-12 423 return le64_to_cpu(data);
b30070862edbdb2 Victor Kamensky 2014-06-12 424 }
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 425 }
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 426
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 427 return data; /* Leave LE untouched */
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 428 }
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 429
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 @430 static inline unsigned long vcpu_data_host_to_guest(struct kvm_vcpu *vcpu,
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 431 unsigned long data,
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 432 unsigned int len)
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 433 {
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 434 if (kvm_vcpu_is_be(vcpu)) {
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 435 switch (len) {
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 436 case 1:
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 437 return data & 0xff;
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 438 case 2:
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 439 return cpu_to_be16(data & 0xffff);
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 440 case 4:
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 441 return cpu_to_be32(data & 0xffffffff);
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 442 default:
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 443 return cpu_to_be64(data);
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 444 }
b30070862edbdb2 Victor Kamensky 2014-06-12 445 } else {
b30070862edbdb2 Victor Kamensky 2014-06-12 446 switch (len) {
b30070862edbdb2 Victor Kamensky 2014-06-12 447 case 1:
b30070862edbdb2 Victor Kamensky 2014-06-12 448 return data & 0xff;
b30070862edbdb2 Victor Kamensky 2014-06-12 449 case 2:
b30070862edbdb2 Victor Kamensky 2014-06-12 450 return cpu_to_le16(data & 0xffff);
b30070862edbdb2 Victor Kamensky 2014-06-12 451 case 4:
b30070862edbdb2 Victor Kamensky 2014-06-12 452 return cpu_to_le32(data & 0xffffffff);
b30070862edbdb2 Victor Kamensky 2014-06-12 453 default:
b30070862edbdb2 Victor Kamensky 2014-06-12 454 return cpu_to_le64(data);
b30070862edbdb2 Victor Kamensky 2014-06-12 455 }
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 456 }
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 457
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 458 return data; /* Leave LE untouched */
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 459 }
6d89d2d9b5bac9d Marc Zyngier 2013-02-12 460
cdb5e02ed133731 Marc Zyngier 2020-10-14 @461 static __always_inline void kvm_incr_pc(struct kvm_vcpu *vcpu)
bd7d95cafb499e2 Mark Rutland 2018-11-09 462 {
cdb5e02ed133731 Marc Zyngier 2020-10-14 463 vcpu->arch.flags |= KVM_ARM64_INCREMENT_PC;
bd7d95cafb499e2 Mark Rutland 2018-11-09 464 }
bd7d95cafb499e2 Mark Rutland 2018-11-09 465
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 months, 3 weeks
Re: [PATCH 17/18] gpio: gpiolib-acpi: Export acpi_get_gpiod()
by kernel test robot
Hi Daniel,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linuxtv-media/master]
[also build test ERROR on driver-core/driver-core-testing pm/linux-next v5.10-rc6 next-20201130]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Daniel-Scally/Add-functionality-...
base: git://linuxtv.org/media_tree.git master
config: ia64-defconfig (attached as .config)
compiler: ia64-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
# https://github.com/0day-ci/linux/commit/eb1854ac694a8e59c0ea703e46fe2ee7e...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Daniel-Scally/Add-functionality-to-ipu3-cio2-driver-allowing-software_node-connections-to-sensors-on-platforms-designed-for-Windows/20201130-214014
git checkout eb1854ac694a8e59c0ea703e46fe2ee7e3118b42
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=ia64
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 >>):
ia64-linux-ld: drivers/usb/core/hub.o: in function `acpi_get_gpiod':
>> (.text+0x3060): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/hcd.o: in function `acpi_get_gpiod':
(.text+0x7480): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/message.o: in function `acpi_get_gpiod':
(.text+0x3f20): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/driver.o: in function `acpi_get_gpiod':
(.text+0x1c00): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/config.o: in function `acpi_get_gpiod':
config.c:(.text+0x3420): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/file.o: in function `acpi_get_gpiod':
(.text+0xe00): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/sysfs.o: in function `acpi_get_gpiod':
sysfs.c:(.text+0x28c0): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/endpoint.o: in function `acpi_get_gpiod':
endpoint.c:(.text+0x7a0): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/devio.o: in function `acpi_get_gpiod':
devio.c:(.text+0xcae0): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/notify.o: in function `acpi_get_gpiod':
(.text+0xc0): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/generic.o: in function `acpi_get_gpiod':
(.text+0xa60): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/quirks.o: in function `acpi_get_gpiod':
quirks.c:(.text+0xac0): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/devices.o: in function `acpi_get_gpiod':
devices.c:(.text+0x1ca0): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/port.o: in function `acpi_get_gpiod':
port.c:(.text+0xcc0): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/hcd-pci.o: in function `acpi_get_gpiod':
(.text+0x1240): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
ia64-linux-ld: drivers/usb/core/usb-acpi.o: in function `acpi_get_gpiod':
(.text+0x900): multiple definition of `acpi_get_gpiod'; drivers/usb/core/usb.o:(.text+0x2020): first defined here
--
ia64-linux-ld: drivers/video/fbdev/core/fbmon.o: in function `acpi_get_gpiod':
>> (.text+0x4a0): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
ia64-linux-ld: drivers/video/fbdev/core/fbcmap.o: in function `acpi_get_gpiod':
(.text+0x960): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
ia64-linux-ld: drivers/video/fbdev/core/fbsysfs.o: in function `acpi_get_gpiod':
(.text+0x1400): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
ia64-linux-ld: drivers/video/fbdev/core/modedb.o: in function `acpi_get_gpiod':
(.text+0x22e0): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
ia64-linux-ld: drivers/video/fbdev/core/fbcvt.o: in function `acpi_get_gpiod':
fbcvt.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
ia64-linux-ld: drivers/video/fbdev/core/fb_defio.o: in function `acpi_get_gpiod':
(.text+0xf40): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
ia64-linux-ld: drivers/video/fbdev/core/fbcon.o: in function `acpi_get_gpiod':
(.text+0xcfa0): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
ia64-linux-ld: drivers/video/fbdev/core/bitblit.o: in function `acpi_get_gpiod':
(.text+0x29a0): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
ia64-linux-ld: drivers/video/fbdev/core/softcursor.o: in function `acpi_get_gpiod':
(.text+0x800): multiple definition of `acpi_get_gpiod'; drivers/video/fbdev/core/fbmem.o:(.text+0x4b20): first defined here
--
ia64-linux-ld: drivers/acpi/processor_idle.o: in function `acpi_get_gpiod':
>> processor_idle.c:(.text+0x3000): multiple definition of `acpi_get_gpiod'; drivers/acpi/processor_driver.o:processor_driver.c:(.text+0xd20): first defined here
ia64-linux-ld: drivers/acpi/processor_throttling.o: in function `acpi_get_gpiod':
processor_throttling.c:(.text+0x27e0): multiple definition of `acpi_get_gpiod'; drivers/acpi/processor_driver.o:processor_driver.c:(.text+0xd20): first defined here
ia64-linux-ld: drivers/acpi/processor_thermal.o: in function `acpi_get_gpiod':
processor_thermal.c:(.text+0x2c0): multiple definition of `acpi_get_gpiod'; drivers/acpi/processor_driver.o:processor_driver.c:(.text+0xd20): first defined here
--
ia64-linux-ld: drivers/gpu/drm/drm_crtc_helper.o: in function `acpi_get_gpiod':
>> (.text+0x22e0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_dp_helper.o: in function `acpi_get_gpiod':
(.text+0x5460): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_dsc.o: in function `acpi_get_gpiod':
(.text+0x1220): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_probe_helper.o: in function `acpi_get_gpiod':
(.text+0x1340): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_plane_helper.o: in function `acpi_get_gpiod':
(.text+0x920): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_dp_mst_topology.o: in function `acpi_get_gpiod':
(.text+0xaa60): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_atomic_helper.o: in function `acpi_get_gpiod':
(.text+0xed00): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_kms_helper_common.o: in function `acpi_get_gpiod':
drm_kms_helper_common.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_dp_dual_mode_helper.o: in function `acpi_get_gpiod':
(.text+0x1280): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_simple_kms_helper.o: in function `acpi_get_gpiod':
(.text+0xb60): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_modeset_helper.o: in function `acpi_get_gpiod':
(.text+0x8a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_scdc_helper.o: in function `acpi_get_gpiod':
(.text+0x620): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_gem_framebuffer_helper.o: in function `acpi_get_gpiod':
(.text+0x11c0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_atomic_state_helper.o: in function `acpi_get_gpiod':
(.text+0x1b80): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_damage_helper.o: in function `acpi_get_gpiod':
(.text+0x1380): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_self_refresh_helper.o: in function `acpi_get_gpiod':
(.text+0xc00): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/bridge/panel.o: in function `acpi_get_gpiod':
(.text+0xa20): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_fb_helper.o: in function `acpi_get_gpiod':
(.text+0x7d80): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_bridge_connector.o:(.text+0xb80): first defined here
--
ia64-linux-ld: drivers/gpu/drm/drm_ioctl.o: in function `acpi_get_gpiod':
>> (.text+0x2540): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_drv.o: in function `acpi_get_gpiod':
(.text+0x2940): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_sysfs.o: in function `acpi_get_gpiod':
(.text+0xe40): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_crtc.o: in function `acpi_get_gpiod':
(.text+0x1340): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_modes.o: in function `acpi_get_gpiod':
(.text+0x4f60): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_edid.o: in function `acpi_get_gpiod':
(.text+0xa7a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_encoder_slave.o: in function `acpi_get_gpiod':
(.text+0x760): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_modeset_lock.o: in function `acpi_get_gpiod':
(.text+0x1a40): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_atomic.o: in function `acpi_get_gpiod':
(.text+0x63c0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_bridge.o: in function `acpi_get_gpiod':
(.text+0x2940): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_framebuffer.o: in function `acpi_get_gpiod':
(.text+0x1260): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_connector.o: in function `acpi_get_gpiod':
(.text+0x48a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_blend.o: in function `acpi_get_gpiod':
(.text+0x1100): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_encoder.o: in function `acpi_get_gpiod':
(.text+0x520): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_mode_object.o: in function `acpi_get_gpiod':
(.text+0xb20): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_property.o: in function `acpi_get_gpiod':
(.text+0x17a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_plane.o: in function `acpi_get_gpiod':
(.text+0x1680): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_color_mgmt.o: in function `acpi_get_gpiod':
(.text+0xb00): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_mode_config.o: in function `acpi_get_gpiod':
(.text+0x1760): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_vblank.o: in function `acpi_get_gpiod':
(.text+0x40c0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_lease.o: in function `acpi_get_gpiod':
drm_lease.c:(.text+0x9a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_writeback.o: in function `acpi_get_gpiod':
(.text+0xec0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_client.o: in function `acpi_get_gpiod':
(.text+0x1200): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_client_modeset.o: in function `acpi_get_gpiod':
(.text+0x52a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_atomic_uapi.o: in function `acpi_get_gpiod':
(.text+0x1120): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_vblank_work.o: in function `acpi_get_gpiod':
(.text+0xb20): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
ia64-linux-ld: drivers/gpu/drm/drm_panel.o: in function `acpi_get_gpiod':
(.text+0xa40): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/drm_file.o:(.text+0x19c0): first defined here
--
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_device.o: in function `acpi_get_gpiod':
>> radeon_device.c:(.text+0xe00): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_asic.o: in function `acpi_get_gpiod':
radeon_asic.c:(.text+0x140): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_kms.o: in function `acpi_get_gpiod':
radeon_kms.c:(.text+0x1d80): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_atombios.o: in function `acpi_get_gpiod':
radeon_atombios.c:(.text+0x19c0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_agp.o: in function `acpi_get_gpiod':
radeon_agp.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/atombios_crtc.o: in function `acpi_get_gpiod':
atombios_crtc.c:(.text+0xb200): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_combios.o: in function `acpi_get_gpiod':
radeon_combios.c:(.text+0x2320): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/atom.o: in function `acpi_get_gpiod':
atom.c:(.text+0xb440): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_fence.o: in function `acpi_get_gpiod':
radeon_fence.c:(.text+0x1740): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_ttm.o: in function `acpi_get_gpiod':
radeon_ttm.c:(.text+0x2d20): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_object.o: in function `acpi_get_gpiod':
radeon_object.c:(.text+0x5a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_gart.o: in function `acpi_get_gpiod':
radeon_gart.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_legacy_crtc.o: in function `acpi_get_gpiod':
radeon_legacy_crtc.c:(.text+0x3440): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_legacy_encoders.o: in function `acpi_get_gpiod':
radeon_legacy_encoders.c:(.text+0x7760): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_connectors.o: in function `acpi_get_gpiod':
radeon_connectors.c:(.text+0x6380): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_encoders.o: in function `acpi_get_gpiod':
radeon_encoders.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_display.o: in function `acpi_get_gpiod':
radeon_display.c:(.text+0x4580): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_cursor.o: in function `acpi_get_gpiod':
radeon_cursor.c:(.text+0x1a80): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_i2c.o: in function `acpi_get_gpiod':
radeon_i2c.c:(.text+0x6060): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_clocks.o: in function `acpi_get_gpiod':
radeon_clocks.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_fb.o: in function `acpi_get_gpiod':
radeon_fb.c:(.text+0x360): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_gem.o: in function `acpi_get_gpiod':
radeon_gem.c:(.text+0x60): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_ring.o: in function `acpi_get_gpiod':
radeon_ring.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_irq_kms.o: in function `acpi_get_gpiod':
radeon_irq_kms.c:(.text+0x1e0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_cs.o: in function `acpi_get_gpiod':
radeon_cs.c:(.text+0x2080): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_bios.o: in function `acpi_get_gpiod':
radeon_bios.c:(.text+0x420): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_benchmark.o: in function `acpi_get_gpiod':
radeon_benchmark.c:(.text+0xf80): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/r100.o: in function `acpi_get_gpiod':
r100.c:(.text+0x1640): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/r300.o: in function `acpi_get_gpiod':
r300.c:(.text+0x2b00): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/r420.o: in function `acpi_get_gpiod':
r420.c:(.text+0x1e0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/rs400.o: in function `acpi_get_gpiod':
rs400.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/rs600.o: in function `acpi_get_gpiod':
rs600.c:(.text+0x320): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/rs690.o: in function `acpi_get_gpiod':
rs690.c:(.text+0x1400): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/rv515.o: in function `acpi_get_gpiod':
rv515.c:(.text+0x1180): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/r520.o: in function `acpi_get_gpiod':
r520.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/r600.o: in function `acpi_get_gpiod':
r600.c:(.text+0x26a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/rv770.o: in function `acpi_get_gpiod':
rv770.c:(.text+0x3500): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_test.o: in function `acpi_get_gpiod':
radeon_test.c:(.text+0x1a20): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/r200.o: in function `acpi_get_gpiod':
r200.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_legacy_tv.o: in function `acpi_get_gpiod':
radeon_legacy_tv.c:(.text+0x600): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/r600_cs.o: in function `acpi_get_gpiod':
r600_cs.c:(.text+0x4bc0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_pm.o: in function `acpi_get_gpiod':
radeon_pm.c:(.text+0x4660): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/atombios_dp.o: in function `acpi_get_gpiod':
atombios_dp.c:(.text+0x13a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/r600_hdmi.o: in function `acpi_get_gpiod':
r600_hdmi.c:(.text+0x4a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/dce3_1_afmt.o: in function `acpi_get_gpiod':
dce3_1_afmt.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/evergreen.o: in function `acpi_get_gpiod':
evergreen.c:(.text+0x99a0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/evergreen_cs.o: in function `acpi_get_gpiod':
evergreen_cs.c:(.text+0xe240): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/evergreen_hdmi.o: in function `acpi_get_gpiod':
evergreen_hdmi.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/radeon_trace_points.o: in function `acpi_get_gpiod':
radeon_trace_points.c:(.text+0x0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/ni.o: in function `acpi_get_gpiod':
ni.c:(.text+0x85c0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
ia64-linux-ld: drivers/gpu/drm/radeon/atombios_encoders.o: in function `acpi_get_gpiod':
atombios_encoders.c:(.text+0x18e0): multiple definition of `acpi_get_gpiod'; drivers/gpu/drm/radeon/radeon_drv.o:radeon_drv.c:(.text+0xb80): first defined here
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 months, 3 weeks
Re: [PATCH v7 17/17] mm: add mmu_notifier argument to follow_pfn
by kernel test robot
Hi Daniel,
I love your patch! Yet something to improve:
[auto build test ERROR on linuxtv-media/master]
[also build test ERROR on char-misc/char-misc-testing v5.10-rc5]
[cannot apply to hnaz-linux-mm/master next-20201127]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Daniel-Vetter/follow_pfn-and-oth...
base: git://linuxtv.org/media_tree.git master
config: s390-randconfig-r032-20201127 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project f095ac11a9550530a4a54298debb8b04b36422be)
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-s390x-linux-gnu
# https://github.com/0day-ci/linux/commit/d76a3489433ce67d45da86aa129533854...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Daniel-Vetter/follow_pfn-and-other-iomap-races/20201128-004421
git checkout d76a3489433ce67d45da86aa12953385427f0ac9
# 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 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:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__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/../../../virt/kvm/kvm_main.c:18:
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:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__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/../../../virt/kvm/kvm_main.c:18:
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:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__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/../../../virt/kvm/kvm_main.c:18:
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:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:501: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:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:609: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:617: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:625: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:634: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:643: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:652:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
>> arch/s390/kvm/../../../virt/kvm/kvm_main.c:1894:40: error: no member named 'mmu_notifier' in 'struct kvm'
r = follow_pfn(vma, addr, &pfn, &kvm->mmu_notifier);
~~~ ^
arch/s390/kvm/../../../virt/kvm/kvm_main.c:1909:41: error: no member named 'mmu_notifier' in 'struct kvm'
r = follow_pfn(vma, addr, &pfn, &kvm->mmu_notifier);
~~~ ^
20 warnings and 2 errors generated.
vim +1894 arch/s390/kvm/../../../virt/kvm/kvm_main.c
1885
1886 static int hva_to_pfn_remapped(struct kvm *kvm, struct vm_area_struct *vma,
1887 unsigned long addr, bool *async,
1888 bool write_fault, bool *writable,
1889 kvm_pfn_t *p_pfn)
1890 {
1891 unsigned long pfn;
1892 int r;
1893
> 1894 r = follow_pfn(vma, addr, &pfn, &kvm->mmu_notifier);
1895 if (r) {
1896 /*
1897 * get_user_pages fails for VM_IO and VM_PFNMAP vmas and does
1898 * not call the fault handler, so do it here.
1899 */
1900 bool unlocked = false;
1901 r = fixup_user_fault(current->mm, addr,
1902 (write_fault ? FAULT_FLAG_WRITE : 0),
1903 &unlocked);
1904 if (unlocked)
1905 return -EAGAIN;
1906 if (r)
1907 return r;
1908
1909 r = follow_pfn(vma, addr, &pfn, &kvm->mmu_notifier);
1910 if (r)
1911 return r;
1912
1913 }
1914
1915 if (writable)
1916 *writable = true;
1917
1918 /*
1919 * Get a reference here because callers of *hva_to_pfn* and
1920 * *gfn_to_pfn* ultimately call kvm_release_pfn_clean on the
1921 * returned pfn. This is only needed if the VMA has VM_MIXEDMAP
1922 * set, but the kvm_get_pfn/kvm_release_pfn_clean pair will
1923 * simply do nothing for reserved pfns.
1924 *
1925 * Whoever called remap_pfn_range is also going to call e.g.
1926 * unmap_mapping_range before the underlying pages are freed,
1927 * causing a call to our MMU notifier.
1928 */
1929 kvm_get_pfn(pfn);
1930
1931 *p_pfn = pfn;
1932 return 0;
1933 }
1934
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 months, 3 weeks