summaryrefslogtreecommitdiffstats
path: root/linux-drd/0015-fix-xsdt-validation.patch
diff options
context:
space:
mode:
authorGravatar Tom Willemse2014-05-09 11:59:48 +0200
committerGravatar Tom Willemse2014-05-09 11:59:48 +0200
commitad8e4849ab5b2250a71f2696ffce4c9cefe258a4 (patch)
tree20d8c9011ccedd1789937fcad2f6c5e6ad7ce9a9 /linux-drd/0015-fix-xsdt-validation.patch
parent11a89d729d05b0c0d13c3546652609f68dd2b83a (diff)
downloadpkgbuilds-ad8e4849ab5b2250a71f2696ffce4c9cefe258a4.tar.gz
pkgbuilds-ad8e4849ab5b2250a71f2696ffce4c9cefe258a4.zip
Update linux-drd to 3.14.2
Diffstat (limited to 'linux-drd/0015-fix-xsdt-validation.patch')
-rw-r--r--linux-drd/0015-fix-xsdt-validation.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/linux-drd/0015-fix-xsdt-validation.patch b/linux-drd/0015-fix-xsdt-validation.patch
new file mode 100644
index 0000000..82dd2be
--- /dev/null
+++ b/linux-drd/0015-fix-xsdt-validation.patch
@@ -0,0 +1,42 @@
+@@ -, +, @@
+ acpi_tb_parse_root_table().
+ Commit: 671cc68dc61f029d44b43a681356078e02d8dab8
+ Subject: ACPICA: Back port and refine validation of the XSDT root table.
+---
+ drivers/acpi/acpica/tbutils.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+--- a/drivers/acpi/acpica/tbutils.c
++++ a/drivers/acpi/acpica/tbutils.c
+@@ -461,6 +461,7 @@ acpi_status __init acpi_tb_parse_root_table(acpi_physical_address rsdp_address)
+ u32 table_count;
+ struct acpi_table_header *table;
+ acpi_physical_address address;
++ acpi_physical_address rsdt_address;
+ u32 length;
+ u8 *table_entry;
+ acpi_status status;
+@@ -488,11 +489,13 @@ acpi_status __init acpi_tb_parse_root_table(acpi_physical_address rsdp_address)
+ * as per the ACPI specification.
+ */
+ address = (acpi_physical_address) rsdp->xsdt_physical_address;
++ rsdt_address = (acpi_physical_address) rsdp->rsdt_physical_address;
+ table_entry_size = ACPI_XSDT_ENTRY_SIZE;
+ } else {
+ /* Root table is an RSDT (32-bit physical addresses) */
+
+ address = (acpi_physical_address) rsdp->rsdt_physical_address;
++ rsdt_address = address;
+ table_entry_size = ACPI_RSDT_ENTRY_SIZE;
+ }
+
+@@ -515,8 +518,7 @@ acpi_status __init acpi_tb_parse_root_table(acpi_physical_address rsdp_address)
+
+ /* Fall back to the RSDT */
+
+- address =
+- (acpi_physical_address) rsdp->rsdt_physical_address;
++ address = rsdt_address;
+ table_entry_size = ACPI_RSDT_ENTRY_SIZE;
+ }
+ }
+