Hi Wei,

I love your patch! Yet something to improve:

[auto build test ERROR on linux/master]
[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: x86_64-rhel (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
        # 
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
        make W=1 ARCH=x86_64 

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 >>):

   ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_dev_common_init':
   drivers/char/tpm/tpm-dev-common.c:267: multiple definition of 
`tpm_dev_common_init'; 
drivers/char/tpm/tpm-dev-common.o:drivers/char/tpm/tpm-dev-common.c:267: first 
defined here
   ld: drivers/char/tpm/tpm-dev-common.o: in function `tpm_dev_common_exit':
   drivers/char/tpm/tpm-dev-common.c:275: multiple definition of 
`tpm_dev_common_exit'; 
drivers/char/tpm/tpm-dev-common.o:drivers/char/tpm/tpm-dev-common.c:275: first 
defined here
   ld: drivers/char/tpm/tpm-dev.o:drivers/char/tpm/tpm-dev.c:60: multiple 
definition of `tpm_fops'; 
drivers/char/tpm/tpm-dev.o:drivers/char/tpm/tpm-dev.c:60: first defined here
   ld: drivers/char/tpm/tpm-interface.o: in function 
`tpm_calc_ordinal_duration':
   drivers/char/tpm/tpm-interface.c:53: multiple definition of 
`tpm_calc_ordinal_duration'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:53: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_transmit_cmd':
   drivers/char/tpm/tpm-interface.c:215: multiple definition of 
`tpm_transmit_cmd'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:215: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_get_timeouts':
   drivers/char/tpm/tpm-interface.c:240: multiple definition of 
`tpm_get_timeouts'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:240: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_is_tpm2':
   drivers/char/tpm/tpm-interface.c:261: multiple definition of `tpm_is_tpm2'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:261: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_pcr_read':
   drivers/char/tpm/tpm-interface.c:286: multiple definition of `tpm_pcr_read'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:286: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_pcr_extend':
   drivers/char/tpm/tpm-interface.c:316: multiple definition of 
`tpm_pcr_extend'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:316: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_send':
   drivers/char/tpm/tpm-interface.c:354: multiple definition of `tpm_send'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:354: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_pm_suspend':
   drivers/char/tpm/tpm-interface.c:390: multiple definition of 
`tpm_pm_suspend'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:390: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_pm_resume':
   drivers/char/tpm/tpm-interface.c:423: multiple definition of 
`tpm_pm_resume'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:423: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_get_random':
   drivers/char/tpm/tpm-interface.c:442: multiple definition of 
`tpm_get_random'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:442: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_transmit':
   drivers/char/tpm/tpm-interface.c:154: multiple definition of `tpm_transmit'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:154: first 
defined here
   ld: drivers/char/tpm/tpm-interface.o: in function `tpm_auto_startup':
   drivers/char/tpm/tpm-interface.c:371: multiple definition of 
`tpm_auto_startup'; 
drivers/char/tpm/tpm-interface.o:drivers/char/tpm/tpm-interface.c:371: first 
defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_getcap':
   drivers/char/tpm/tpm1-cmd.c:484: multiple definition of `tpm1_getcap'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:484: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_do_selftest':
   drivers/char/tpm/tpm1-cmd.c:643: multiple definition of `tpm1_do_selftest'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:643: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_calc_ordinal_duration':
   drivers/char/tpm/tpm1-cmd.c:292: multiple definition of 
`tpm1_calc_ordinal_duration'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:292: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_get_timeouts':
   drivers/char/tpm/tpm1-cmd.c:343: multiple definition of `tpm1_get_timeouts'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:343: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_pcr_extend':
   drivers/char/tpm/tpm1-cmd.c:465: multiple definition of `tpm1_pcr_extend'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:465: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_get_random':
   drivers/char/tpm/tpm1-cmd.c:531: multiple definition of `tpm1_get_random'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:531: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_pcr_read':
   drivers/char/tpm/tpm1-cmd.c:585: multiple definition of `tpm1_pcr_read'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:585: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_auto_startup':
   drivers/char/tpm/tpm1-cmd.c:705: multiple definition of `tpm1_auto_startup'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:705: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_pm_suspend':
   drivers/char/tpm/tpm1-cmd.c:738: multiple definition of `tpm1_pm_suspend'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:738: first defined here
   ld: drivers/char/tpm/tpm1-cmd.o: in function `tpm1_get_pcr_allocation':
   drivers/char/tpm/tpm1-cmd.c:796: multiple definition of 
`tpm1_get_pcr_allocation'; 
drivers/char/tpm/tpm1-cmd.o:drivers/char/tpm/tpm1-cmd.c:796: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_flush_context':
   drivers/char/tpm/tpm2-cmd.c:349: multiple definition of 
`tpm2_flush_context'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:349: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_tpm_pt':
   drivers/char/tpm/tpm2-cmd.c:388: multiple definition of `tpm2_get_tpm_pt'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:388: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_probe':
   drivers/char/tpm/tpm2-cmd.c:484: multiple definition of `tpm2_probe'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:484: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_cc_attrs_tbl':
   drivers/char/tpm/tpm2-cmd.c:619: multiple definition of 
`tpm2_get_cc_attrs_tbl'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:619: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_timeouts':
   drivers/char/tpm/tpm2-cmd.c:26: multiple definition of `tpm2_get_timeouts'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:26: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_calc_ordinal_duration':
   drivers/char/tpm/tpm2-cmd.c:129: multiple definition of 
`tpm2_calc_ordinal_duration'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:129: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_pcr_read':
   drivers/char/tpm/tpm2-cmd.c:163: multiple definition of `tpm2_pcr_read'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:163: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_pcr_extend':
   drivers/char/tpm/tpm2-cmd.c:237: multiple definition of `tpm2_pcr_extend'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:237: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_random':
   drivers/char/tpm/tpm2-cmd.c:289: multiple definition of `tpm2_get_random'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:289: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_shutdown':
   drivers/char/tpm/tpm2-cmd.c:421: multiple definition of `tpm2_shutdown'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:421: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_get_pcr_allocation':
   drivers/char/tpm/tpm2-cmd.c:540: multiple definition of 
`tpm2_get_pcr_allocation'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:540: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_auto_startup':
   drivers/char/tpm/tpm2-cmd.c:723: multiple definition of `tpm2_auto_startup'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:723: first defined here
   ld: drivers/char/tpm/tpm2-cmd.o: in function `tpm2_find_cc':
   drivers/char/tpm/tpm2-cmd.c:753: multiple definition of `tpm2_find_cc'; 
drivers/char/tpm/tpm2-cmd.o:drivers/char/tpm/tpm2-cmd.c:753: first defined here
   ld: drivers/char/tpm/tpmrm-dev.o:drivers/char/tpm/tpmrm-dev.c:47: multiple 
definition of `tpmrm_fops'; 
drivers/char/tpm/tpmrm-dev.o:drivers/char/tpm/tpmrm-dev.c:47: first defined here
   ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_init_space':
   drivers/char/tpm/tpm2-space.c:42: multiple definition of `tpm2_init_space'; 
drivers/char/tpm/tpm2-space.o:drivers/char/tpm/tpm2-space.c:42: first defined 
here
   ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_del_space':
   drivers/char/tpm/tpm2-space.c:60: multiple definition of `tpm2_del_space'; 
drivers/char/tpm/tpm2-space.o:drivers/char/tpm/tpm2-space.c:60: first defined 
here
   ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_flush_space':
   drivers/char/tpm/tpm2-space.c:165: multiple definition of 
`tpm2_flush_space'; 
drivers/char/tpm/tpm2-space.o:drivers/char/tpm/tpm2-space.c:165: first defined 
here
   ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_prepare_space':
   drivers/char/tpm/tpm2-space.c:302: multiple definition of 
`tpm2_prepare_space'; 
drivers/char/tpm/tpm2-space.o:drivers/char/tpm/tpm2-space.c:302: first defined 
here
   ld: drivers/char/tpm/tpm2-space.o: in function `tpm2_commit_space':
   drivers/char/tpm/tpm2-space.c:533: multiple definition of 
`tpm2_commit_space'; 
drivers/char/tpm/tpm2-space.o:drivers/char/tpm/tpm2-space.c:533: first defined 
here
   ld: drivers/char/tpm/tpm-sysfs.o: in function `tpm_sysfs_add_device':
   drivers/char/tpm/tpm-sysfs.c:341: multiple definition of 
`tpm_sysfs_add_device'; 
drivers/char/tpm/tpm-sysfs.o:drivers/char/tpm/tpm-sysfs.c:341: first defined 
here
   ld: drivers/char/tpm/eventlog/common.o: in function `tpm_bios_log_teardown':
   drivers/char/tpm/eventlog/common.c:167: multiple definition of 
`tpm_bios_log_teardown'; 
drivers/char/tpm/eventlog/common.o:drivers/char/tpm/eventlog/common.c:167: 
first defined here
   ld: drivers/char/tpm/eventlog/common.o: in function `tpm_bios_log_setup':
   drivers/char/tpm/eventlog/common.c:104: multiple definition of 
`tpm_bios_log_setup'; 
drivers/char/tpm/eventlog/common.o:drivers/char/tpm/eventlog/common.c:104: 
first defined here
   ld: drivers/char/tpm/eventlog/tpm1.o:drivers/char/tpm/eventlog/tpm1.c:291: 
multiple definition of `tpm1_binary_b_measurements_seqops'; 
drivers/char/tpm/eventlog/tpm1.o:drivers/char/tpm/eventlog/tpm1.c:291: first 
defined here
   ld: drivers/char/tpm/eventlog/tpm1.o:drivers/char/tpm/eventlog/tpm1.c:284: 
multiple definition of `tpm1_ascii_b_measurements_seqops'; 
drivers/char/tpm/eventlog/tpm1.o:drivers/char/tpm/eventlog/tpm1.c:284: first 
defined here
   ld: drivers/char/tpm/eventlog/tpm2.o:drivers/char/tpm/eventlog/tpm2.c:154: 
multiple definition of `tpm2_binary_b_measurements_seqops'; 
drivers/char/tpm/eventlog/tpm2.o:drivers/char/tpm/eventlog/tpm2.c:154: first 
defined here
   ld: drivers/char/tpm/tpm_ppi.o: in function `tpm_add_ppi':
   drivers/char/tpm/tpm_ppi.c:367: multiple definition of `tpm_add_ppi'; 
drivers/char/tpm/tpm_ppi.o:drivers/char/tpm/tpm_ppi.c:367: first defined here
   ld: drivers/char/tpm/eventlog/acpi.o: in function `tpm_read_log_acpi':
   drivers/char/tpm/eventlog/acpi.c:46: multiple definition of 
`tpm_read_log_acpi'; 
drivers/char/tpm/eventlog/acpi.o:drivers/char/tpm/eventlog/acpi.c:46: first 
defined here
   ld: drivers/char/tpm/eventlog/efi.o: in function `tpm_read_log_efi':
>> drivers/char/tpm/eventlog/efi.c:17: multiple definition of 
>> `tpm_read_log_efi'; 
>> drivers/char/tpm/eventlog/efi.o:drivers/char/tpm/eventlog/efi.c:17: first 
>> defined here
   ld: drivers/char/tpm/tpm_tis_core.o: in function `tpm_tis_remove':
   drivers/char/tpm/tpm_tis_core.c:857: multiple definition of 
`tpm_tis_remove'; 
drivers/char/tpm/tpm_tis_core.o:drivers/char/tpm/tpm_tis_core.c:857: first 
defined here
   ld: drivers/char/tpm/tpm_tis_core.o: in function `tpm_tis_core_init':
   drivers/char/tpm/tpm_tis_core.c:949: multiple definition of 
`tpm_tis_core_init'; 
drivers/char/tpm/tpm_tis_core.o:drivers/char/tpm/tpm_tis_core.c:949: first 
defined here
   ld: drivers/char/tpm/tpm_tis_core.o: in function `tpm_tis_resume':
   drivers/char/tpm/tpm_tis_core.c:1143: multiple definition of 
`tpm_tis_resume'; 
drivers/char/tpm/tpm_tis_core.o:drivers/char/tpm/tpm_tis_core.c:1143: first 
defined here


vim +17 drivers/char/tpm/eventlog/efi.c

58cc1e4faf10a73c drivers/char/tpm/tpm_eventlog_efi.c Thiebaud Weksteen 
2017-09-20  14  
58cc1e4faf10a73c drivers/char/tpm/tpm_eventlog_efi.c Thiebaud Weksteen 
2017-09-20  15  /* read binary bios log from EFI configuration table */
58cc1e4faf10a73c drivers/char/tpm/tpm_eventlog_efi.c Thiebaud Weksteen 
2017-09-20  16  int tpm_read_log_efi(struct tpm_chip *chip)
58cc1e4faf10a73c drivers/char/tpm/tpm_eventlog_efi.c Thiebaud Weksteen 
2017-09-20 @17  {

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org

Attachment: .config.gz
Description: application/gzip

Reply via email to