All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
To: linux-efi@vger.kernel.org, Ingo Molnar <mingo@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	linux-kernel@vger.kernel.org,
	Ben Dooks <ben.dooks@codethink.co.uk>,
	Dave Young <dyoung@redhat.com>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	Jerry Snitselaar <jsnitsel@redhat.com>,
	linux-integrity@vger.kernel.org, Lukas Wunner <lukas@wunner.de>,
	Lyude Paul <lyude@redhat.com>, Matthew Garrett <mjg59@google.com>,
	Octavian Purdila <octavian.purdila@intel.com>,
	Peter Jones <pjones@redhat.com>, Scott Talbert <swt@techie.net>
Subject: [PATCH 1/7] efi: cper: Fix endianness of PCIe class code
Date: Wed,  2 Oct 2019 18:58:58 +0200	[thread overview]
Message-ID: <20191002165904.8819-2-ard.biesheuvel@linaro.org> (raw)
In-Reply-To: <20191002165904.8819-1-ard.biesheuvel@linaro.org>

From: Lukas Wunner <lukas@wunner.de>

The CPER parser assumes that the class code is big endian, but at least
on this edk2-derived Intel Purley platform it's little endian:

    efi: EFI v2.50 by EDK II BIOS ID:PLYDCRB1.86B.0119.R05.1701181843
    DMI: Intel Corporation PURLEY/PURLEY, BIOS PLYDCRB1.86B.0119.R05.1701181843 01/18/2017

    {1}[Hardware Error]:   device_id: 0000:5d:00.0
    {1}[Hardware Error]:   slot: 0
    {1}[Hardware Error]:   secondary_bus: 0x5e
    {1}[Hardware Error]:   vendor_id: 0x8086, device_id: 0x2030
    {1}[Hardware Error]:   class_code: 000406
                                       ^^^^^^ (should be 060400)

Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 drivers/firmware/efi/cper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/firmware/efi/cper.c b/drivers/firmware/efi/cper.c
index addf0749dd8b..b1af0de2e100 100644
--- a/drivers/firmware/efi/cper.c
+++ b/drivers/firmware/efi/cper.c
@@ -381,7 +381,7 @@ static void cper_print_pcie(const char *pfx, const struct cper_sec_pcie *pcie,
 		printk("%s""vendor_id: 0x%04x, device_id: 0x%04x\n", pfx,
 		       pcie->device_id.vendor_id, pcie->device_id.device_id);
 		p = pcie->device_id.class_code;
-		printk("%s""class_code: %02x%02x%02x\n", pfx, p[0], p[1], p[2]);
+		printk("%s""class_code: %02x%02x%02x\n", pfx, p[2], p[1], p[0]);
 	}
 	if (pcie->validation_bits & CPER_PCIE_VALID_SERIAL_NUMBER)
 		printk("%s""serial number: 0x%04x, 0x%04x\n", pfx,
-- 
2.20.1


  reply	other threads:[~2019-10-02 17:04 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-02 16:58 [GIT PULL 0/7] EFI fixes for v5.4 Ard Biesheuvel
2019-10-02 16:58 ` Ard Biesheuvel [this message]
2019-10-07 14:49   ` [tip: efi/urgent] efi/cper: Fix endianness of PCIe class code tip-bot2 for Lukas Wunner
2019-10-02 16:58 ` [PATCH 2/7] efivar/ssdt: don't iterate over EFI vars if no SSDT override was specified Ard Biesheuvel
2019-10-07 14:49   ` [tip: efi/urgent] efivar/ssdt: Don't " tip-bot2 for Ard Biesheuvel
2019-10-02 16:59 ` [PATCH 3/7] efi/tpm: Don't access event->count when it isn't mapped Ard Biesheuvel
2019-10-07 14:49   ` [tip: efi/urgent] " tip-bot2 for Peter Jones
2019-10-02 16:59 ` [PATCH 4/7] efi/tpm: don't traverse an event log with no events Ard Biesheuvel
2019-10-07 14:49   ` [tip: efi/urgent] efi/tpm: Don't " tip-bot2 for Peter Jones
2019-10-02 16:59 ` [PATCH 5/7] efi/tpm: only set efi_tpm_final_log_size after successful event log parsing Ard Biesheuvel
2019-10-07 14:49   ` [tip: efi/urgent] efi/tpm: Only set 'efi_tpm_final_log_size' " tip-bot2 for Jerry Snitselaar
2019-10-02 16:59 ` [PATCH 6/7] efi: make unexported efi_rci2_sysfs_init static Ard Biesheuvel
2019-10-07 14:49   ` [tip: efi/urgent] efi: Make unexported efi_rci2_sysfs_init() static tip-bot2 for Ben Dooks
2019-10-02 16:59 ` [PATCH 7/7] efi/x86: do not clean dummy variable in kexec path Ard Biesheuvel
2019-10-07 14:49   ` [tip: efi/urgent] efi/x86: Do " tip-bot2 for Dave Young

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=20191002165904.8819-2-ard.biesheuvel@linaro.org \
    --to=ard.biesheuvel@linaro.org \
    --cc=ben.dooks@codethink.co.uk \
    --cc=dyoung@redhat.com \
    --cc=jarkko.sakkinen@linux.intel.com \
    --cc=jsnitsel@redhat.com \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lukas@wunner.de \
    --cc=lyude@redhat.com \
    --cc=mingo@kernel.org \
    --cc=mjg59@google.com \
    --cc=octavian.purdila@intel.com \
    --cc=pjones@redhat.com \
    --cc=swt@techie.net \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.