Commit a6f4a451 authored by Bob Moore's avatar Bob Moore Committed by Len Brown
Browse files

ACPICA: Bulletproof disassembler for bad ACPI tables



Fixed a problem with the disassembler where invalid ACPI tables
could cause faults or infinite loops.

Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
Signed-off-by: default avatarAlexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent 970d9c9e
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -97,11 +97,12 @@ typedef const struct acpi_dmtable_info {
#define ACPI_DMT_CHKSUM                 20
#define ACPI_DMT_SPACEID                21
#define ACPI_DMT_GAS                    22
#define ACPI_DMT_DMAR                   23
#define ACPI_DMT_MADT                   24
#define ACPI_DMT_SRAT                   25
#define ACPI_DMT_EXIT                   26
#define ACPI_DMT_SIG                    27
#define ACPI_DMT_ASF                    23
#define ACPI_DMT_DMAR                   24
#define ACPI_DMT_MADT                   25
#define ACPI_DMT_SRAT                   26
#define ACPI_DMT_EXIT                   27
#define ACPI_DMT_SIG                    28

typedef
void (*acpi_dmtable_handler) (struct acpi_table_header * table);
@@ -195,7 +196,7 @@ extern struct acpi_dmtable_info acpi_dm_table_info_wdrt[];
 */
void acpi_dm_dump_data_table(struct acpi_table_header *table);

void
acpi_status
acpi_dm_dump_table(u32 table_length,
		   u32 table_offset,
		   void *table,