android_kernel_motorola_sm6225/drivers/firmware
Jean Delvare bfbaafae85 firmware: dmi_scan: Prevent dmi_num integer overflow
dmi_num is a u16, dmi_len is a u32, so this construct:

	dmi_num = dmi_len / 4;

would result in an integer overflow for a DMI table larger than
256 kB. I've never see such a large table so far, but SMBIOS 3.0
makes it possible so maybe we'll see such tables in the future.

So instead of faking a structure count when the entry point does
not provide it, adjust the loop condition in dmi_table() to properly
deal with the case where dmi_num is not set.

This bug was introduced with the initial SMBIOS 3.0 support in commit
fc43026278 ("dmi: add support for SMBIOS 3.0 64-bit entry point").

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Cc: Matt Fleming <matt.fleming@intel.com>
Cc: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>
Cc: <stable@vger.kernel.org>
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
2015-03-27 10:53:46 +00:00
..
efi efi/libstub: Fix boundary checking in efi_high_alloc() 2015-02-24 18:46:03 +00:00
google firmware: google memconsole driver fixes 2014-02-15 11:30:28 -08:00
dcdbas.c firmware: drop owner assignment from platform_drivers 2014-10-20 16:20:31 +02:00
dcdbas.h dcdbas: export functionality for use in other drivers 2009-01-08 08:31:12 -08:00
dell_rbu.c sysfs: add struct file* to bin_attr callbacks 2010-05-21 09:37:31 -07:00
dmi-id.c dmi-id: fix a memory leak in dmi_id_init error path 2010-08-05 13:53:34 -07:00
dmi-sysfs.c firmware: dmi-sysfs: Remove "dmi" directory on module exit 2013-12-08 18:23:42 -08:00
dmi_scan.c firmware: dmi_scan: Prevent dmi_num integer overflow 2015-03-27 10:53:46 +00:00
edd.c [SCSI] edd: Treat "XPRS" host bus type the same as "PCI" 2011-10-31 13:26:19 +04:00
iscsi_ibft.c iscsi_ibft: Fix finding Broadcom specific ibft sign 2014-05-13 14:54:14 -04:00
iscsi_ibft_find.c efi: Make 'efi_enabled' a function to query EFI facilities 2013-01-30 11:51:59 -08:00
Kconfig ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
Makefile x86/efi: Don't select EFI from certain special ACPI drivers 2013-12-19 21:32:46 +01:00
memmap.c drivers/firmware/memmap.c: don't create memmap sysfs of same firmware_map_entry 2014-10-09 22:26:00 -04:00
pcdp.c pcdp: use early_ioremap/early_iounmap to access pcdp table 2012-07-30 17:25:11 -07:00
pcdp.h Update broken web addresses in the kernel. 2010-10-18 11:03:14 +02:00