From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============7807539652513625424==" MIME-Version: 1.0 From: kbuild test robot To: kbuild-all@lists.01.org Subject: [avpatel:riscv_kvm_v10 5/31] arch/riscv/kernel/sbi.c:341:2: error: implicit declaration of function 'sbi_shutdown' Date: Sat, 30 Nov 2019 10:58:07 +0800 Message-ID: <201911301002.hWT2Ie0m%lkp@intel.com> List-Id: --===============7807539652513625424== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable tree: https://github.com/avpatel/linux.git riscv_kvm_v10 head: adf8e35ae72bfdf0ce6f00f7c30923ea8f791748 commit: ccdc1f5cf0b366a9a0600bfd4b5333f2fc8b7351 [5/31] RISC-V: Introduce a= new config for SBI v0.1 config: riscv-allnoconfig (attached as .config) compiler: riscv64-linux-gcc (GCC) 7.4.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout ccdc1f5cf0b366a9a0600bfd4b5333f2fc8b7351 # save the attached .config to linux build tree GCC_VERSION=3D7.4.0 make.cross ARCH=3Driscv = If you fix the issue, kindly add following tag Reported-by: kbuild test robot All errors (new ones prefixed by >>): pr_warn("remote fence extension is not available in SBI v%lu.%lu\n", ^~~~~~~ arch/riscv/kernel/sbi.c:83:61: note: format string is defined here pr_warn("remote fence extension is not available in SBI v%lu.%lu\n", ~~^ %u In file included from include/linux/printk.h:7:0, from include/linux/kernel.h:15, from include/linux/list.h:9, from include/linux/pm.h:11, from arch/riscv/kernel/sbi.c:4: include/linux/kern_levels.h:5:18: warning: format '%lu' expects argument= of type 'long unsigned int', but argument 3 has type 'int' [-Wformat=3D] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ include/linux/kern_levels.h:12:22: note: in expansion of macro 'KERN_SOH' #define KERN_WARNING KERN_SOH "4" /* warning conditions */ ^~~~~~~~ include/linux/printk.h:306:9: note: in expansion of macro 'KERN_WARNING' printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~~~ include/linux/printk.h:307:17: note: in expansion of macro 'pr_warning' #define pr_warn pr_warning ^~~~~~~~~~ arch/riscv/kernel/sbi.c:83:2: note: in expansion of macro 'pr_warn' pr_warn("remote fence extension is not available in SBI v%lu.%lu\n", ^~~~~~~ arch/riscv/kernel/sbi.c:83:65: note: format string is defined here pr_warn("remote fence extension is not available in SBI v%lu.%lu\n", ~~^ %u arch/riscv/kernel/sbi.c: In function 'sbi_remote_fence_i': arch/riscv/kernel/sbi.c:240:15: error: 'SBI_EXT_0_1_REMOTE_FENCE_I' unde= clared (first use in this function) __sbi_rfence(SBI_EXT_0_1_REMOTE_FENCE_I, 0, ^~~~~~~~~~~~~~~~~~~~~~~~~~ arch/riscv/kernel/sbi.c: In function 'sbi_remote_sfence_vma': arch/riscv/kernel/sbi.c:258:15: error: 'SBI_EXT_0_1_REMOTE_SFENCE_VMA' u= ndeclared (first use in this function) __sbi_rfence(SBI_EXT_0_1_REMOTE_SFENCE_VMA, 0, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ arch/riscv/kernel/sbi.c: In function 'sbi_remote_sfence_vma_asid': arch/riscv/kernel/sbi.c:279:15: error: 'SBI_EXT_0_1_REMOTE_SFENCE_VMA_AS= ID' undeclared (first use in this function) __sbi_rfence(SBI_EXT_0_1_REMOTE_SFENCE_VMA_ASID, 0, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ arch/riscv/kernel/sbi.c: In function 'sbi_probe_extension': arch/riscv/kernel/sbi.c:292:16: error: storage size of 'ret' isn't known struct sbiret ret; ^~~ arch/riscv/kernel/sbi.c:294:18: error: 'SBI_EXT_BASE' undeclared (first = use in this function); did you mean 'BIT_MASK'? ret =3D sbi_ecall(SBI_EXT_BASE, SBI_BASE_PROBE_EXT, extid, 0, 0, 0, 0,= 0); ^~~~~~~~~~~~ BIT_MASK arch/riscv/kernel/sbi.c:294:32: error: 'SBI_BASE_PROBE_EXT' undeclared (= first use in this function) ret =3D sbi_ecall(SBI_EXT_BASE, SBI_BASE_PROBE_EXT, extid, 0, 0, 0, 0,= 0); ^~~~~~~~~~~~~~~~~~ arch/riscv/kernel/sbi.c:292:16: warning: unused variable 'ret' [-Wunused= -variable] struct sbiret ret; ^~~ arch/riscv/kernel/sbi.c: In function 'sbi_get_spec_version': arch/riscv/kernel/sbi.c:305:16: error: storage size of 'ret' isn't known struct sbiret ret; ^~~ arch/riscv/kernel/sbi.c:307:18: error: 'SBI_EXT_BASE' undeclared (first = use in this function); did you mean 'BIT_MASK'? ret =3D sbi_ecall(SBI_EXT_BASE, SBI_BASE_GET_SPEC_VERSION, ^~~~~~~~~~~~ BIT_MASK arch/riscv/kernel/sbi.c:307:32: error: 'SBI_BASE_GET_SPEC_VERSION' undec= lared (first use in this function) ret =3D sbi_ecall(SBI_EXT_BASE, SBI_BASE_GET_SPEC_VERSION, ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/riscv/kernel/sbi.c:305:16: warning: unused variable 'ret' [-Wunused= -variable] struct sbiret ret; ^~~ arch/riscv/kernel/sbi.c: In function 'sbi_get_firmware_id': arch/riscv/kernel/sbi.c:317:16: error: storage size of 'ret' isn't known struct sbiret ret; ^~~ arch/riscv/kernel/sbi.c:319:18: error: 'SBI_EXT_BASE' undeclared (first = use in this function); did you mean 'BIT_MASK'? ret =3D sbi_ecall(SBI_EXT_BASE, SBI_BASE_GET_IMP_ID, ^~~~~~~~~~~~ BIT_MASK arch/riscv/kernel/sbi.c:319:32: error: 'SBI_BASE_GET_IMP_ID' undeclared = (first use in this function) ret =3D sbi_ecall(SBI_EXT_BASE, SBI_BASE_GET_IMP_ID, ^~~~~~~~~~~~~~~~~~~ arch/riscv/kernel/sbi.c:317:16: warning: unused variable 'ret' [-Wunused= -variable] struct sbiret ret; ^~~ arch/riscv/kernel/sbi.c: In function 'sbi_get_firmware_version': arch/riscv/kernel/sbi.c:329:16: error: storage size of 'ret' isn't known struct sbiret ret; ^~~ arch/riscv/kernel/sbi.c:331:18: error: 'SBI_EXT_BASE' undeclared (first = use in this function); did you mean 'BIT_MASK'? ret =3D sbi_ecall(SBI_EXT_BASE, SBI_BASE_GET_IMP_VERSION, ^~~~~~~~~~~~ BIT_MASK arch/riscv/kernel/sbi.c:331:32: error: 'SBI_BASE_GET_IMP_VERSION' undecl= ared (first use in this function); did you mean '__GXX_ABI_VERSION'? ret =3D sbi_ecall(SBI_EXT_BASE, SBI_BASE_GET_IMP_VERSION, ^~~~~~~~~~~~~~~~~~~~~~~~ __GXX_ABI_VERSION arch/riscv/kernel/sbi.c:329:16: warning: unused variable 'ret' [-Wunused= -variable] struct sbiret ret; ^~~ arch/riscv/kernel/sbi.c: In function 'sbi_power_off': >> arch/riscv/kernel/sbi.c:341:2: error: implicit declaration of function '= sbi_shutdown' [-Werror=3Dimplicit-function-declaration] sbi_shutdown(); ^~~~~~~~~~~~ In file included from include/linux/printk.h:7:0, from include/linux/kernel.h:15, from include/linux/list.h:9, from include/linux/pm.h:11, from arch/riscv/kernel/sbi.c:4: arch/riscv/kernel/sbi.c: In function 'sbi_init': include/linux/kern_levels.h:5:18: warning: format '%lu' expects argument= of type 'long unsigned int', but argument 2 has type 'int' [-Wformat=3D] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ include/linux/kern_levels.h:14:19: note: in expansion of macro 'KERN_SOH' #define KERN_INFO KERN_SOH "6" /* informational */ ^~~~~~~~ include/linux/printk.h:311:9: note: in expansion of macro 'KERN_INFO' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~ arch/riscv/kernel/sbi.c:353:2: note: in expansion of macro 'pr_info' pr_info("SBI specification v%lu.%lu detected\n", ^~~~~~~ arch/riscv/kernel/sbi.c:353:32: note: format string is defined here pr_info("SBI specification v%lu.%lu detected\n", ~~^ %u In file included from include/linux/printk.h:7:0, from include/linux/kernel.h:15, from include/linux/list.h:9, from include/linux/pm.h:11, from arch/riscv/kernel/sbi.c:4: include/linux/kern_levels.h:5:18: warning: format '%lu' expects argument= of type 'long unsigned int', but argument 3 has type 'int' [-Wformat=3D] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ include/linux/kern_levels.h:14:19: note: in expansion of macro 'KERN_SOH' #define KERN_INFO KERN_SOH "6" /* informational */ ^~~~~~~~ include/linux/printk.h:311:9: note: in expansion of macro 'KERN_INFO' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~ arch/riscv/kernel/sbi.c:353:2: note: in expansion of macro 'pr_info' pr_info("SBI specification v%lu.%lu detected\n", ^~~~~~~ arch/riscv/kernel/sbi.c:353:36: note: format string is defined here pr_info("SBI specification v%lu.%lu detected\n", ~~^ %u arch/riscv/kernel/sbi.c:356:7: error: implicit declaration of function '= sbi_spec_is_0_1' [-Werror=3Dimplicit-function-declaration] if (!sbi_spec_is_0_1()) { ^~~~~~~~~~~~~~~ arch/riscv/kernel/sbi.c: In function 'sbi_get_spec_version': arch/riscv/kernel/sbi.c:313:1: warning: control reaches end of non-void = function [-Wreturn-type] } ^ arch/riscv/kernel/sbi.c: In function 'sbi_get_firmware_id': arch/riscv/kernel/sbi.c:325:1: warning: control reaches end of non-void = function [-Wreturn-type] } ^ arch/riscv/kernel/sbi.c: In function 'sbi_get_firmware_version': arch/riscv/kernel/sbi.c:337:1: warning: control reaches end of non-void = function [-Wreturn-type] } ^ cc1: some warnings being treated as errors vim +/sbi_shutdown +341 arch/riscv/kernel/sbi.c 16e90702b40cf6 Atish Patra 2019-11-26 326 = 16e90702b40cf6 Atish Patra 2019-11-26 327 static long sbi_get_firmw= are_version(void) 16e90702b40cf6 Atish Patra 2019-11-26 328 { 16e90702b40cf6 Atish Patra 2019-11-26 329 struct sbiret ret; 16e90702b40cf6 Atish Patra 2019-11-26 330 = 16e90702b40cf6 Atish Patra 2019-11-26 @331 ret =3D sbi_ecall(SBI_EX= T_BASE, SBI_BASE_GET_IMP_VERSION, 16e90702b40cf6 Atish Patra 2019-11-26 332 0, 0, 0, 0, 0, = 0); 16e90702b40cf6 Atish Patra 2019-11-26 333 if (!ret.error) 16e90702b40cf6 Atish Patra 2019-11-26 334 return ret.value; 16e90702b40cf6 Atish Patra 2019-11-26 335 else 16e90702b40cf6 Atish Patra 2019-11-26 336 return sbi_err_map_linu= x_errno(ret.error); 16e90702b40cf6 Atish Patra 2019-11-26 337 } 16e90702b40cf6 Atish Patra 2019-11-26 338 = 3320648ecc3819 Christoph Hellwig 2019-10-28 339 static void sbi_power_off= (void) 3320648ecc3819 Christoph Hellwig 2019-10-28 340 { 3320648ecc3819 Christoph Hellwig 2019-10-28 @341 sbi_shutdown(); 3320648ecc3819 Christoph Hellwig 2019-10-28 342 } 3320648ecc3819 Christoph Hellwig 2019-10-28 343 = :::::: The code at line 341 was first introduced by commit :::::: 3320648ecc38190caad298fbbce949f591a10253 riscv: cleanup the default = power off implementation :::::: TO: Christoph Hellwig :::::: CC: Paul Walmsley --- 0-DAY kernel test infrastructure Open Source Technology Cen= ter https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org Intel Corpor= ation --===============7807539652513625424== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 inESN0FEPxY3GP0/dNglhEJIAAA= --===============7807539652513625424==--