From: Mario Limonciello <superm1@kernel.org>
To: Borislav Petkov <bp@alien8.de>
Cc: Yazen Ghannam <yazen.ghannam@amd.com>,
Jean Delvare <jdelvare@suse.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v5 5/5] x86/CPU/AMD: Print AGESA string from DMI additional information entry
Date: Sun, 15 Mar 2026 10:14:48 -0500 [thread overview]
Message-ID: <c2a2f1f3-fa21-4ed5-b7d8-40b6042d4e41@kernel.org> (raw)
In-Reply-To: <20260315131416.GVabawqKuPkYKShXpn@fat_crate.local>
On 3/15/26 8:14 AM, Borislav Petkov wrote:
> On Fri, Jan 23, 2026 at 03:30:56PM -0600, Mario Limonciello (AMD) wrote:
>> From: Yazen Ghannam <yazen.ghannam@amd.com>
>>
>> Type 40 entries (Additional Information) are summarized in section 7.41
>> as part of the SMBIOS specification. Generally, these entries aren't
>> interesting to save.
>>
>> However on some AMD Zen systems, the AGESA version is stored here. This
>> is useful to save to the kernel message logs for debugging. It can be
>> used to cross-reference issues.
>>
>> Implement an iterator for the Additional Information entries. Use this
>> to find and print the AGESA string. Do so in AMD code, since the use
>> case is AMD-specific.
>
> Look what I said the last time:
FYI - you're replying to the v5 not the v6 [1].
Link:
https://lore.kernel.org/all/20260307141024.819807-1-superm1@kernel.org/ [1]
>
> https://lore.kernel.org/r/20260126130755.GIaXdnK65MTIiXqg-l@fat_crate.local
>
> I'll have to teach AI to give feedback for commit messages explaining the
> diff.
Sorry about that one, I missed it even in v6.
>
>> Signed-off-by: Yazen Ghannam <yazen.ghannam@amd.com>
>> Co-developed-by: "Mario Limonciello (AMD)" <superm1@kernel.org>
>> Signed-off-by: "Mario Limonciello (AMD)" <superm1@kernel.org>
>> ---
>> v5:
>> * Return "" in !CONFIG_DMI case (LKP robot, Yazen)
>> v4:
>> * New patch (based upon older versions though)
>> ---
>> arch/x86/kernel/cpu/amd.c | 53 +++++++++++++++++++++++++++++++++++++
>> drivers/firmware/dmi_scan.c | 3 ++-
>> include/linux/dmi.h | 18 +++++++++++++
>> 3 files changed, 73 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
>> index bc94ff1e250ad..aa04a27aeb107 100644
>> --- a/arch/x86/kernel/cpu/amd.c
>> +++ b/arch/x86/kernel/cpu/amd.c
>> @@ -1,6 +1,7 @@
>> // SPDX-License-Identifier: GPL-2.0-only
>> #include <linux/export.h>
>> #include <linux/bitops.h>
>> +#include <linux/dmi.h>
>> #include <linux/elf.h>
>> #include <linux/mm.h>
>> #include <linux/kvm_types.h>
>> @@ -1404,3 +1405,55 @@ static __init int print_s5_reset_status_mmio(void)
>> return 0;
>> }
>> late_initcall(print_s5_reset_status_mmio);
>> +
>> +static void __init amd_dmi_scan_additional(const struct dmi_header *d, void *p)
>> +{
>> + struct dmi_a_info *info = (struct dmi_a_info *)d;
>> + void *next, *end;
>> +
>> + /*
>> + * DMI Additional Info table has a 'count' field. But it's not very
>> + * helpful since the entries are variable length. So don't use it.
>> + */
>> + if (info->header.type != DMI_ENTRY_ADDITIONAL ||
>> + info->header.length < DMI_A_INFO_MIN_SIZE)
>> + return;
>> +
>> + /*
>> + * Get the first entry.
>> + * The minimum table size guarantees at least one entry is present.
>> + */
>> + next = (void *)(info + 1);
>> + end = (void *)info + info->header.length;
>
> From last time:
>
> "This end needs to be corrected to some sane upper limit because we don't trust
> firmware one bit."
>
I did add a check for info->count < 1, but that's not what you were
actually looking for. Do you have a suggestion for an upper limit to
bound things?
I was thinking something like this:
#define DMI_LIMIT 10
int limit = info -> count > DMI_LIMIT ? DMI_LIMIT : info->count;
end = (void *)info + limit * info->header.length;
next prev parent reply other threads:[~2026-03-15 15:14 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-23 21:30 [PATCH v5 0/5] Print AGESA version at bootup Mario Limonciello (AMD)
2026-01-23 21:30 ` [PATCH v5 1/5] firmware: dmi: Correct an indexing error in dmi.h Mario Limonciello (AMD)
2026-01-23 21:30 ` [PATCH v5 2/5] firmware: dmi: Adjust dmi_decode() to use enums Mario Limonciello (AMD)
2026-01-23 21:30 ` [PATCH v5 3/5] firmware: dmi: Add missing DMI entry types Mario Limonciello (AMD)
2026-01-23 21:30 ` [PATCH v5 4/5] firmware: dmi: Add pr_fmt() for dmi_scan.c Mario Limonciello (AMD)
2026-01-23 21:30 ` [PATCH v5 5/5] x86/CPU/AMD: Print AGESA string from DMI additional information entry Mario Limonciello (AMD)
2026-01-26 13:07 ` Borislav Petkov
2026-01-26 15:15 ` Mario Limonciello (AMD) (kernel.org)
2026-01-26 15:40 ` Borislav Petkov
2026-01-26 16:41 ` Mario Limonciello (AMD) (kernel.org)
2026-01-26 16:54 ` Borislav Petkov
2026-01-28 14:39 ` Yazen Ghannam
2026-01-28 15:27 ` Mario Limonciello
2026-03-15 13:14 ` Borislav Petkov
2026-03-15 15:14 ` Mario Limonciello [this message]
2026-03-15 20:56 ` Borislav Petkov
2026-03-17 2:33 ` Mario Limonciello
2026-03-17 18:24 ` Borislav Petkov
2026-03-17 18:28 ` Mario Limonciello
2026-03-17 19:18 ` Borislav Petkov
2026-03-31 17:59 ` Jean Delvare
2026-03-31 18:09 ` Borislav Petkov
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=c2a2f1f3-fa21-4ed5-b7d8-40b6042d4e41@kernel.org \
--to=superm1@kernel.org \
--cc=bp@alien8.de \
--cc=jdelvare@suse.com \
--cc=linux-kernel@vger.kernel.org \
--cc=yazen.ghannam@amd.com \
/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