Hi Wei, I love your patch! Yet something to improve:
[auto build test ERROR on linux/master] [also build test ERROR on soc/for-next linus/master v5.11-rc3 next-20210115] [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/Wei-Liu/fTPM-make-sure-TEE-is-initialized-before-fTPM/20210116-081538 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 5ee88057889bbca5f5bb96031b62b3756b33e164 config: mips-randconfig-p002-20210115 (attached as .config) compiler: mips-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/b82b3e643532e299d9c6e622604e6d8d090153f0 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Wei-Liu/fTPM-make-sure-TEE-is-initialized-before-fTPM/20210116-081538 git checkout b82b3e643532e299d9c6e622604e6d8d090153f0 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <l...@intel.com> All errors (new ones prefixed by >>): mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_chip_start': >> tpm-chip.c:(.text+0x0): multiple definition of `tpm_chip_start'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0x0): first defined here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_chip_stop': >> tpm-chip.c:(.text+0xe8): multiple definition of `tpm_chip_stop'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0xe8): first defined here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_try_get_ops': >> tpm-chip.c:(.text+0x170): multiple definition of `tpm_try_get_ops'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0x170): first defined here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_put_ops': >> tpm-chip.c:(.text+0x218): multiple definition of `tpm_put_ops'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0x218): first defined here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_default_chip': >> tpm-chip.c:(.text+0x278): multiple definition of `tpm_default_chip'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0x278): first defined here >> mips-linux-ld: drivers/char/tpm/tpm-chip.o:(.data+0x48): multiple definition >> of `dev_nums_idr'; drivers/char/tpm/tpm-chip.o:(.data+0x48): first defined >> here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_chip_unregister': >> tpm-chip.c:(.text+0x4a4): multiple definition of `tpm_chip_unregister'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0x4a4): first defined here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_chip_register': >> tpm-chip.c:(.text+0x584): multiple definition of `tpm_chip_register'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0x584): first defined here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_chip_alloc': >> tpm-chip.c:(.text+0x75c): multiple definition of `tpm_chip_alloc'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0x75c): first defined here >> mips-linux-ld: drivers/char/tpm/tpm-chip.o:(.bss+0x8): multiple definition >> of `tpm_class'; drivers/char/tpm/tpm-chip.o:(.bss+0x8): first defined here >> mips-linux-ld: drivers/char/tpm/tpm-chip.o:(.bss+0x4): multiple definition >> of `tpmrm_class'; drivers/char/tpm/tpm-chip.o:(.bss+0x4): first defined here >> mips-linux-ld: drivers/char/tpm/tpm-chip.o:(.bss+0x0): multiple definition >> of `tpm_devt'; drivers/char/tpm/tpm-chip.o:(.bss+0x0): first defined here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpmm_chip_alloc': >> tpm-chip.c:(.text+0x9bc): multiple definition of `tpmm_chip_alloc'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0x9bc): first defined here mips-linux-ld: drivers/char/tpm/tpm-chip.o: in function `tpm_find_get_ops': >> tpm-chip.c:(.text+0xa58): multiple definition of `tpm_find_get_ops'; >> drivers/char/tpm/tpm-chip.o:tpm-chip.c:(.text+0xa58): first defined here mips-linux-ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_common_open': >> tpm-dev-common.c:(.text+0x22c): multiple definition of `tpm_common_open'; >> drivers/char/tpm/tpm-dev-common.o:tpm-dev-common.c:(.text+0x22c): first >> defined here mips-linux-ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_common_read': >> tpm-dev-common.c:(.text+0x378): multiple definition of `tpm_common_read'; >> drivers/char/tpm/tpm-dev-common.o:tpm-dev-common.c:(.text+0x378): first >> defined here mips-linux-ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_common_write': >> tpm-dev-common.c:(.text+0x574): multiple definition of `tpm_common_write'; >> drivers/char/tpm/tpm-dev-common.o:tpm-dev-common.c:(.text+0x574): first >> defined here mips-linux-ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_common_poll': >> tpm-dev-common.c:(.text+0x864): multiple definition of `tpm_common_poll'; >> drivers/char/tpm/tpm-dev-common.o:tpm-dev-common.c:(.text+0x864): first >> defined here mips-linux-ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_common_release': >> tpm-dev-common.c:(.text+0x8e8): multiple definition of `tpm_common_release'; >> drivers/char/tpm/tpm-dev-common.o:tpm-dev-common.c:(.text+0x8e8): first >> defined here mips-linux-ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_dev_common_init': >> tpm-dev-common.c:(.init.text+0x0): multiple definition of >> `tpm_dev_common_init'; >> drivers/char/tpm/tpm-dev-common.o:tpm-dev-common.c:(.init.text+0x0): first >> defined here mips-linux-ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_dev_common_exit': tpm-dev-common.c:(.exit.text+0x0): multiple definition of `tpm_dev_common_exit'; drivers/char/tpm/tpm-dev-common.o:tpm-dev-common.c:(.exit.text+0x0): first defined here mips-linux-ld: drivers/char/tpm/tpm-dev.o:(.rodata+0x0): multiple definition of `tpm_fops'; drivers/char/tpm/tpm-dev.o:(.rodata+0x0): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_pm_resume': tpm-interface.c:(.text+0x0): multiple definition of `tpm_pm_resume'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x0): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_calc_ordinal_duration': tpm-interface.c:(.text+0x20): multiple definition of `tpm_calc_ordinal_duration'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x20): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_get_timeouts': tpm-interface.c:(.text+0x50): multiple definition of `tpm_get_timeouts'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x50): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_is_tpm2': tpm-interface.c:(.text+0x94): multiple definition of `tpm_is_tpm2'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x94): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_pcr_read': tpm-interface.c:(.text+0xe4): multiple definition of `tpm_pcr_read'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0xe4): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_pcr_extend': tpm-interface.c:(.text+0x184): multiple definition of `tpm_pcr_extend'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x184): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_pm_suspend': tpm-interface.c:(.text+0x268): multiple definition of `tpm_pm_suspend'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x268): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_get_random': tpm-interface.c:(.text+0x308): multiple definition of `tpm_get_random'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x308): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_transmit': tpm-interface.c:(.text+0x3bc): multiple definition of `tpm_transmit'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x3bc): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_transmit_cmd': tpm-interface.c:(.text+0x628): multiple definition of `tpm_transmit_cmd'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x628): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_send': tpm-interface.c:(.text+0x698): multiple definition of `tpm_send'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x698): first defined here mips-linux-ld: drivers/char/tpm/tpm-interface.o: in function `tpm_auto_startup': tpm-interface.c:(.text+0x730): multiple definition of `tpm_auto_startup'; drivers/char/tpm/tpm-interface.o:tpm-interface.c:(.text+0x730): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_getcap': tpm1-cmd.c:(.text+0x0): multiple definition of `tpm1_getcap'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0x0): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_calc_ordinal_duration': tpm1-cmd.c:(.text+0x2dc): multiple definition of `tpm1_calc_ordinal_duration'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0x2dc): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_get_timeouts': tpm1-cmd.c:(.text+0x36c): multiple definition of `tpm1_get_timeouts'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0x36c): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_pcr_extend': tpm1-cmd.c:(.text+0x7ac): multiple definition of `tpm1_pcr_extend'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0x7ac): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_get_random': tpm1-cmd.c:(.text+0x920): multiple definition of `tpm1_get_random'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0x920): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_pcr_read': tpm1-cmd.c:(.text+0xb50): multiple definition of `tpm1_pcr_read'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0xb50): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_do_selftest': tpm1-cmd.c:(.text+0xcac): multiple definition of `tpm1_do_selftest'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0xcac): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_auto_startup': tpm1-cmd.c:(.text+0xe54): multiple definition of `tpm1_auto_startup'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0xe54): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_pm_suspend': tpm1-cmd.c:(.text+0xea8): multiple definition of `tpm1_pm_suspend'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0xea8): first defined here mips-linux-ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_get_pcr_allocation': tpm1-cmd.c:(.text+0x1018): multiple definition of `tpm1_get_pcr_allocation'; drivers/char/tpm/tpm1-cmd.o:tpm1-cmd.c:(.text+0x1018): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_flush_context': tpm2-cmd.c:(.text+0x170): multiple definition of `tpm2_flush_context'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x170): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_tpm_pt': tpm2-cmd.c:(.text+0x27c): multiple definition of `tpm2_get_tpm_pt'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x27c): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_probe': tpm2-cmd.c:(.text+0x460): multiple definition of `tpm2_probe'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x460): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_cc_attrs_tbl': tpm2-cmd.c:(.text+0x644): multiple definition of `tpm2_get_cc_attrs_tbl'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x644): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_timeouts': tpm2-cmd.c:(.text+0x968): multiple definition of `tpm2_get_timeouts'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x968): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_calc_ordinal_duration': tpm2-cmd.c:(.text+0x9c8): multiple definition of `tpm2_calc_ordinal_duration'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x9c8): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_pcr_read': tpm2-cmd.c:(.text+0xa5c): multiple definition of `tpm2_pcr_read'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0xa5c): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_pcr_extend': tpm2-cmd.c:(.text+0xd80): multiple definition of `tpm2_pcr_extend'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0xd80): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_random': tpm2-cmd.c:(.text+0x1110): multiple definition of `tpm2_get_random'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x1110): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_shutdown': tpm2-cmd.c:(.text+0x1350): multiple definition of `tpm2_shutdown'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x1350): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_pcr_allocation': tpm2-cmd.c:(.text+0x145c): multiple definition of `tpm2_get_pcr_allocation'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x145c): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_auto_startup': tpm2-cmd.c:(.text+0x1890): multiple definition of `tpm2_auto_startup'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x1890): first defined here mips-linux-ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_find_cc': tpm2-cmd.c:(.text+0x1a34): multiple definition of `tpm2_find_cc'; drivers/char/tpm/tpm2-cmd.o:tpm2-cmd.c:(.text+0x1a34): first defined here mips-linux-ld: drivers/char/tpm/tpmrm-dev.o:(.rodata+0x0): multiple definition of `tpmrm_fops'; drivers/char/tpm/tpmrm-dev.o:(.rodata+0x0): first defined here mips-linux-ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_init_space': tpm2-space.c:(.text+0x3c8): multiple definition of `tpm2_init_space'; drivers/char/tpm/tpm2-space.o:tpm2-space.c:(.text+0x3c8): first defined here mips-linux-ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_del_space': tpm2-space.c:(.text+0x464): multiple definition of `tpm2_del_space'; drivers/char/tpm/tpm2-space.o:tpm2-space.c:(.text+0x464): first defined here mips-linux-ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_flush_space': tpm2-space.c:(.text+0x57c): multiple definition of `tpm2_flush_space'; drivers/char/tpm/tpm2-space.o:tpm2-space.c:(.text+0x57c): first defined here mips-linux-ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_prepare_space': tpm2-space.c:(.text+0x6bc): multiple definition of `tpm2_prepare_space'; drivers/char/tpm/tpm2-space.o:tpm2-space.c:(.text+0x6bc): first defined here mips-linux-ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_commit_space': tpm2-space.c:(.text+0xa7c): multiple definition of `tpm2_commit_space'; drivers/char/tpm/tpm2-space.o:tpm2-space.c:(.text+0xa7c): first defined here mips-linux-ld: drivers/char/tpm/tpm-sysfs.o: in function `tpm_sysfs_add_device': tpm-sysfs.c:(.text+0xa20): multiple definition of `tpm_sysfs_add_device'; drivers/char/tpm/tpm-sysfs.o:tpm-sysfs.c:(.text+0xa20): first defined here mips-linux-ld: drivers/char/tpm/eventlog/common.o: in function `tpm_bios_log_teardown': common.c:(.text+0xf4): multiple definition of `tpm_bios_log_teardown'; drivers/char/tpm/eventlog/common.o:common.c:(.text+0xf4): first defined here mips-linux-ld: drivers/char/tpm/eventlog/common.o: in function `tpm_bios_log_setup': common.c:(.text+0x1e0): multiple definition of `tpm_bios_log_setup'; drivers/char/tpm/eventlog/common.o:common.c:(.text+0x1e0): first defined here mips-linux-ld: drivers/char/tpm/eventlog/tpm1.o:(.rodata+0x38): multiple definition of `tpm1_binary_b_measurements_seqops'; drivers/char/tpm/eventlog/tpm1.o:(.rodata+0x38): first defined here mips-linux-ld: drivers/char/tpm/eventlog/tpm1.o:(.rodata+0x48): multiple definition of `tpm1_ascii_b_measurements_seqops'; drivers/char/tpm/eventlog/tpm1.o:(.rodata+0x48): first defined here mips-linux-ld: drivers/char/tpm/eventlog/tpm2.o:(.rodata+0x18): multiple definition of `tpm2_binary_b_measurements_seqops'; drivers/char/tpm/eventlog/tpm2.o:(.rodata+0x18): first defined here mips-linux-ld: drivers/char/tpm/eventlog/of.o: in function `tpm_read_log_of': of.c:(.text+0x0): multiple definition of `tpm_read_log_of'; drivers/char/tpm/eventlog/of.o:of.c:(.text+0x0): first defined here mips-linux-ld: drivers/char/tpm/tpm_tis_core.o: in function `tpm_tis_remove': tpm_tis_core.c:(.text+0x1dc): multiple definition of `tpm_tis_remove'; drivers/char/tpm/tpm_tis_core.o:tpm_tis_core.c:(.text+0x1dc): first defined here mips-linux-ld: drivers/char/tpm/tpm_tis_core.o: in function `tpm_tis_core_init': tpm_tis_core.c:(.text+0x137c): multiple definition of `tpm_tis_core_init'; drivers/char/tpm/tpm_tis_core.o:tpm_tis_core.c:(.text+0x137c): first defined here mips-linux-ld: drivers/char/tpm/st33zp24/st33zp24.o: in function `st33zp24_probe': --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
.config.gz
Description: application/gzip