git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
This commit was manufactured by cvs2svn to create tag
[linux-2.6.git]
/
drivers
/
acpi
/
tables.c
diff --git
a/drivers/acpi/tables.c
b/drivers/acpi/tables.c
index
621640e
..
d87764e
100644
(file)
--- a/
drivers/acpi/tables.c
+++ b/
drivers/acpi/tables.c
@@
-343,10
+343,11
@@
acpi_table_parse_madt_family (
entry = (acpi_table_entry_header *)
((unsigned long) madt + madt_size);
entry = (acpi_table_entry_header *)
((unsigned long) madt + madt_size);
- while (((unsigned long) entry) < madt_end) {
+ while (((unsigned long) entry)
+ sizeof(acpi_table_entry_header)
< madt_end) {
if (entry->type == entry_id &&
(!max_entries || count++ < max_entries))
if (entry->type == entry_id &&
(!max_entries || count++ < max_entries))
- handler(entry);
+ if (handler(entry, madt_end))
+ return -EINVAL;
entry = (acpi_table_entry_header *)
((unsigned long) entry + entry->length);
entry = (acpi_table_entry_header *)
((unsigned long) entry + entry->length);