Messages in this thread | | | Subject | Re: [PATCH] firmware: dmi_scan: Only honor end-of-table for 64-bit tables | From | Jean Delvare <> | Date | Thu, 30 Apr 2015 15:46:20 +0200 |
| |
Hi Ard,
Le Thursday 30 April 2015 à 12:37 +0200, Ard Biesheuvel a écrit : > On 28 April 2015 at 20:41, Jean Delvare <jdelvare@suse.de> wrote: > > From: Jean Delvare <jdelvare@suse.de> > > Subject: firmware: dmi_scan: Only honor end-of-table for 64-bit tables > > > > A 32-bit entry point to a DMI table says how many structures the table > > contains. The SMBIOS specification explicitly says that end-of-table > > markers should be ignored if they are not actually at the end of the > > DMI table. So only honor the end-of-table marker for tables accessed > > through 64-bit entry points, as they do not specify a structure count. > > > > Fixes: fc43026278 ("dmi: add support for SMBIOS 3.0 64-bit entry point") > > Signed-off-by: Jean Delvare <jdelvare@suse.de> > > Cc: Leif Lindholm <leif.lindholm@linaro.org> > > Cc: Matt Fleming <matt.fleming@intel.com> > > Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> > > --- > > drivers/firmware/dmi_scan.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > --- linux-4.1-rc1.orig/drivers/firmware/dmi_scan.c 2015-04-28 16:39:00.845282262 +0200 > > +++ linux-4.1-rc1/drivers/firmware/dmi_scan.c 2015-04-28 16:47:35.092644748 +0200 > > @@ -111,7 +111,7 @@ static void dmi_table(u8 *buf, > > /* > > * 7.45 End-of-Table (Type 127) [SMBIOS reference spec v3.0.0] > > I wrote this comment under the assumption that type #127 was new in > v3, but apparently it is not. > Since you are changing the test below into something non-trivial, > could we perhaps update the comment to explain better what goes on > here?
Good idea, thanks for suggesting. Version 2 of the patch is coming.
> > */ > > - if (dm->type == DMI_ENTRY_END_OF_TABLE) > > + if (!dmi_num && dm->type == DMI_ENTRY_END_OF_TABLE) > > break; > > > > data += 2; > >
-- Jean Delvare SUSE L3 Support
| |