linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Jordan Hand <jorhand@linux.microsoft.com>
Cc: kbuild-all@01.org, jarkko.sakkinen@linux.intel.com,
	Jordan Hand <jorhand@linux.microsoft.com>,
	Peter Huewe <peterhuewe@gmx.de>, Jason Gunthorpe <jgg@ziepe.ca>,
	Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Allison Randal <allison@lohutok.net>,
	linux-integrity@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4] tpm: Parse event log from TPM2 ACPI table
Date: Sun, 1 Sep 2019 01:15:50 +0800	[thread overview]
Message-ID: <201909010121.fZZ3IMNY%lkp@intel.com> (raw)
In-Reply-To: <20190831051027.11544-1-jorhand@linux.microsoft.com>

[-- Attachment #1: Type: text/plain, Size: 4083 bytes --]

Hi Jordan,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on jss-tpmdd/next]
[cannot apply to v5.3-rc6 next-20190830]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Jordan-Hand/tpm-Parse-event-log-from-TPM2-ACPI-table/20190831-234702
base:   git://git.infradead.org/users/jjs/linux-tpmdd next
config: x86_64-rhel (attached as .config)
compiler: gcc-7 (Debian 7.4.0-11) 7.4.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/char/tpm/eventlog/acpi.c: In function 'tpm_read_log_acpi':
>> drivers/char/tpm/eventlog/acpi.c:96:21: error: 'tpm2_trailer' is a pointer; did you mean to use '->'?
      len = tpm2_trailer.minimum_log_length;
                        ^
                        ->
   drivers/char/tpm/eventlog/acpi.c:97:23: error: 'tpm2_trailer' is a pointer; did you mean to use '->'?
      start = tpm2_trailer.log_address;
                          ^
                          ->

vim +96 drivers/char/tpm/eventlog/acpi.c

    43	
    44	/* If an event log is present, the TPM2 ACPI table will contain the full
    45	 * trailer
    46	 */
    47	
    48	/* read binary bios log */
    49	int tpm_read_log_acpi(struct tpm_chip *chip)
    50	{
    51		struct acpi_table_header *buff;
    52		struct acpi_tcpa *tcpa;
    53		struct acpi_tpm2_trailer *tpm2_trailer;
    54		acpi_status status;
    55		void __iomem *virt;
    56		u64 len, start;
    57		int log_type;
    58		struct tpm_bios_log *log;
    59		bool is_tpm2 = chip->flags & TPM_CHIP_FLAG_TPM2;
    60		acpi_string table_sig;
    61	
    62		log = &chip->log;
    63	
    64		/* Unfortuntely ACPI does not associate the event log with a specific
    65		 * TPM, like PPI. Thus all ACPI TPMs will read the same log.
    66		 */
    67		if (!chip->acpi_dev_handle)
    68			return -ENODEV;
    69	
    70		/* Find TCPA or TPM2 entry in RSDT (ACPI_LOGICAL_ADDRESSING) */
    71		table_sig = is_tpm2 ? ACPI_SIG_TPM2 : ACPI_SIG_TCPA;
    72		status = acpi_get_table(table_sig, 1, &buff);
    73	
    74		if (ACPI_FAILURE(status))
    75			return -ENODEV;
    76	
    77		if (!is_tpm2) {
    78			tcpa = (struct acpi_tcpa *)buff;
    79			switch (tcpa->platform_class) {
    80			case BIOS_SERVER:
    81				len = tcpa->server.log_max_len;
    82				start = tcpa->server.log_start_addr;
    83				break;
    84			case BIOS_CLIENT:
    85			default:
    86				len = tcpa->client.log_max_len;
    87				start = tcpa->client.log_start_addr;
    88				break;
    89			}
    90			log_type = EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2;
    91		} else if (buff->length ==
    92			   sizeof(struct acpi_table_tpm2) +
    93			   sizeof(struct acpi_tpm2_trailer)) {
    94			tpm2_trailer = (struct acpi_tpm2_trailer *)buff;
    95	
  > 96			len = tpm2_trailer.minimum_log_length;
    97			start = tpm2_trailer.log_address;
    98			log_type = EFI_TCG2_EVENT_LOG_FORMAT_TCG_2;
    99		} else {
   100			return -ENODEV;
   101		}
   102	
   103		if (!len) {
   104			dev_warn(&chip->dev, "%s: %s log area empty\n",
   105				 __func__, table_sig);
   106			return -EIO;
   107		}
   108	
   109		/* malloc EventLog space */
   110		log->bios_event_log = kmalloc(len, GFP_KERNEL);
   111		if (!log->bios_event_log)
   112			return -ENOMEM;
   113	
   114		log->bios_event_log_end = log->bios_event_log + len;
   115	
   116		virt = acpi_os_map_iomem(start, len);
   117		if (!virt)
   118			goto err;
   119	
   120		memcpy_fromio(log->bios_event_log, virt, len);
   121	
   122		acpi_os_unmap_iomem(virt, len);
   123		return log_type;
   124	
   125	err:
   126		kfree(log->bios_event_log);
   127		log->bios_event_log = NULL;
   128		return -EIO;
   129	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 43523 bytes --]

  reply	other threads:[~2019-08-31 17:17 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-31  5:10 [PATCH v4] tpm: Parse event log from TPM2 ACPI table Jordan Hand
2019-08-31 17:15 ` kbuild test robot [this message]
2019-09-02 13:46 ` Jarkko Sakkinen
2019-09-03 18:27 ` Jerry Snitselaar
2019-09-03 19:15   ` Jordan Hand

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201909010121.fZZ3IMNY%lkp@intel.com \
    --to=lkp@intel.com \
    --cc=allison@lohutok.net \
    --cc=arnd@arndb.de \
    --cc=gregkh@linuxfoundation.org \
    --cc=jarkko.sakkinen@linux.intel.com \
    --cc=jgg@ziepe.ca \
    --cc=jorhand@linux.microsoft.com \
    --cc=kbuild-all@01.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peterhuewe@gmx.de \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).