All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <561EB923.6010109@redhat.com>

diff --git a/a/2.txt b/N1/2.txt
index 2a18a24..dfa8185 100644
--- a/a/2.txt
+++ b/N1/2.txt
@@ -1,4 +1,4 @@
->From 52a2011c4998674d80c4456e6fd8ba11beaee65c Mon Sep 17 00:00:00 2001
+From 52a2011c4998674d80c4456e6fd8ba11beaee65c Mon Sep 17 00:00:00 2001
 From: Al Stone <ahs3@redhat.com>
 Date: Tue, 13 Oct 2015 15:29:15 -0600
 Subject: [PATCH 1/4] ACPI: workaround x86 firmware using reserved MADT
diff --git a/a/3.txt b/N1/3.txt
index be920df..5b9aabb 100644
--- a/a/3.txt
+++ b/N1/3.txt
@@ -1,4 +1,4 @@
->From 8b7e93421a1bd3a35ed6200fb778b87e9bff34c5 Mon Sep 17 00:00:00 2001
+From 8b7e93421a1bd3a35ed6200fb778b87e9bff34c5 Mon Sep 17 00:00:00 2001
 From: Al Stone <ahs3@redhat.com>
 Date: Tue, 13 Oct 2015 15:51:13 -0600
 Subject: [PATCH 2/4] ACPI: workaround x86 firmware with mis-matched FADT/MADT
diff --git a/a/4.txt b/N1/4.txt
index 4d55e46..47d578e 100644
--- a/a/4.txt
+++ b/N1/4.txt
@@ -1,4 +1,4 @@
->From 773dd448360098b6faf6c171dd716371d603f3ef Mon Sep 17 00:00:00 2001
+From 773dd448360098b6faf6c171dd716371d603f3ef Mon Sep 17 00:00:00 2001
 From: Al Stone <ahs3@redhat.com>
 Date: Tue, 13 Oct 2015 16:23:21 -0600
 Subject: [PATCH 3/4] ACPI: workaround FADT always being revision 2
diff --git a/a/5.txt b/N1/5.txt
index 584e51c..2260ca1 100644
--- a/a/5.txt
+++ b/N1/5.txt
@@ -1,4 +1,4 @@
->From 6d3189ccfcbac9a61e6502df70499bd2ee808509 Mon Sep 17 00:00:00 2001
+From 6d3189ccfcbac9a61e6502df70499bd2ee808509 Mon Sep 17 00:00:00 2001
 From: Al Stone <ahs3@redhat.com>
 Date: Tue, 13 Oct 2015 16:31:50 -0600
 Subject: [PATCH 4/4] ACPI: for bad_madt_entry(), the GIC ITS table is 20 bytes
diff --git a/a/content_digest b/N1/content_digest
index af2844e..9406fe8 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -10,7 +10,7 @@
  "ref\0561C8351.3030304@erley.org\0"
  "From\0Al Stone <ahs3@redhat.com>\0"
  "Subject\0Re: [Linaro-acpi] [PATCH v5 0/5] Provide better MADT subtable sanity checks\0"
- "Date\0Wed, 14 Oct 2015 14:20:51 -0600\0"
+ "Date\0Wed, 14 Oct 2015 20:20:51 +0000\0"
  "To\0Pat Erley <pat-lkml@erley.org>"
   Al Stone <al.stone@linaro.org>
   Hanjun Guo <hanjun.guo@linaro.org>
@@ -128,7 +128,7 @@
  "\01:2\0"
  "fn\00001-ACPI-workaround-x86-firmware-using-reserved-MADT-sub.patch\0"
  "b\0"
- ">From 52a2011c4998674d80c4456e6fd8ba11beaee65c Mon Sep 17 00:00:00 2001\n"
+ "From 52a2011c4998674d80c4456e6fd8ba11beaee65c Mon Sep 17 00:00:00 2001\n"
  "From: Al Stone <ahs3@redhat.com>\n"
  "Date: Tue, 13 Oct 2015 15:29:15 -0600\n"
  "Subject: [PATCH 1/4] ACPI: workaround x86 firmware using reserved MADT\n"
@@ -179,7 +179,7 @@
  "\01:3\0"
  "fn\00002-ACPI-workaround-x86-firmware-with-mis-matched-FADT-M.patch\0"
  "b\0"
- ">From 8b7e93421a1bd3a35ed6200fb778b87e9bff34c5 Mon Sep 17 00:00:00 2001\n"
+ "From 8b7e93421a1bd3a35ed6200fb778b87e9bff34c5 Mon Sep 17 00:00:00 2001\n"
  "From: Al Stone <ahs3@redhat.com>\n"
  "Date: Tue, 13 Oct 2015 15:51:13 -0600\n"
  "Subject: [PATCH 2/4] ACPI: workaround x86 firmware with mis-matched FADT/MADT\n"
@@ -230,7 +230,7 @@
  "\01:4\0"
  "fn\00003-ACPI-workaround-FADT-always-being-revision-2.patch\0"
  "b\0"
- ">From 773dd448360098b6faf6c171dd716371d603f3ef Mon Sep 17 00:00:00 2001\n"
+ "From 773dd448360098b6faf6c171dd716371d603f3ef Mon Sep 17 00:00:00 2001\n"
  "From: Al Stone <ahs3@redhat.com>\n"
  "Date: Tue, 13 Oct 2015 16:23:21 -0600\n"
  "Subject: [PATCH 3/4] ACPI: workaround FADT always being revision 2\n"
@@ -312,7 +312,7 @@
  "\01:5\0"
  "fn\00004-ACPI-for-bad_madt_entry-the-GIC-ITS-table-is-20-byte.patch\0"
  "b\0"
- ">From 6d3189ccfcbac9a61e6502df70499bd2ee808509 Mon Sep 17 00:00:00 2001\n"
+ "From 6d3189ccfcbac9a61e6502df70499bd2ee808509 Mon Sep 17 00:00:00 2001\n"
  "From: Al Stone <ahs3@redhat.com>\n"
  "Date: Tue, 13 Oct 2015 16:31:50 -0600\n"
  "Subject: [PATCH 4/4] ACPI: for bad_madt_entry(), the GIC ITS table is 20 bytes\n"
@@ -352,4 +352,4 @@
  "-- \n"
  2.4.3
 
-85546ec3f0bad433bac00109ffeeb2d93b3548062816186ba92e1e451bbbaa2d
+f2d7aa87648bace2ce5a51394ef525afe94c09c4ccc429dda9aa685cc697d208

diff --git a/a/1.txt b/N2/1.txt
index aee2b6d..dc34161 100644
--- a/a/1.txt
+++ b/N2/1.txt
@@ -95,5 +95,33 @@ al
 Al Stone
 Software Engineer
 Red Hat, Inc.
-ahs3@redhat.com
+ahs3 at redhat.com
 -----------------------------------
+-------------- next part --------------
+A non-text attachment was scrubbed...
+Name: 0001-ACPI-workaround-x86-firmware-using-reserved-MADT-sub.patch
+Type: text/x-patch
+Size: 1788 bytes
+Desc: not available
+URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151014/461d0443/attachment-0004.bin>
+-------------- next part --------------
+A non-text attachment was scrubbed...
+Name: 0002-ACPI-workaround-x86-firmware-with-mis-matched-FADT-M.patch
+Type: text/x-patch
+Size: 1756 bytes
+Desc: not available
+URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151014/461d0443/attachment-0005.bin>
+-------------- next part --------------
+A non-text attachment was scrubbed...
+Name: 0003-ACPI-workaround-FADT-always-being-revision-2.patch
+Type: text/x-patch
+Size: 2909 bytes
+Desc: not available
+URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151014/461d0443/attachment-0006.bin>
+-------------- next part --------------
+A non-text attachment was scrubbed...
+Name: 0004-ACPI-for-bad_madt_entry-the-GIC-ITS-table-is-20-byte.patch
+Type: text/x-patch
+Size: 1627 bytes
+Desc: not available
+URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151014/461d0443/attachment-0007.bin>
diff --git a/a/2.hdr b/a/2.hdr
deleted file mode 100644
index a96028b..0000000
--- a/a/2.hdr
+++ /dev/null
@@ -1,6 +0,0 @@
-Content-Type: text/x-patch;
- name="0001-ACPI-workaround-x86-firmware-using-reserved-MADT-sub.patch"
-Content-Transfer-Encoding: 7bit
-Content-Disposition: attachment;
- filename*0="0001-ACPI-workaround-x86-firmware-using-reserved-MADT-sub.pa";
- filename*1="tch"
diff --git a/a/2.txt b/a/2.txt
deleted file mode 100644
index 2a18a24..0000000
--- a/a/2.txt
+++ /dev/null
@@ -1,48 +0,0 @@
->From 52a2011c4998674d80c4456e6fd8ba11beaee65c Mon Sep 17 00:00:00 2001
-From: Al Stone <ahs3@redhat.com>
-Date: Tue, 13 Oct 2015 15:29:15 -0600
-Subject: [PATCH 1/4] ACPI: workaround x86 firmware using reserved MADT
- subtable IDs
-
-According to the ACPI specification, version 6.0, table 5-46,  MADT
-subtable IDs in the range of 0x10-0x7f are reserved for possible
-future use by the specification.  The function bad_madt_entry() tries
-to enforce the spec, but it turns out there are x86 machines that use
-0x7f even though they should not.
-
-So, continue to enforce this rule for arm64, since we're starting out
-fresh, but relax it for systems already out there so we don't keep them
-from booting.
-
-Signed-off-by: Al Stone <al.stone@linaro.org>
----
- drivers/acpi/tables.c | 14 +++++++++++---
- 1 file changed, 11 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c
-index a2ed38a..e5cfd72 100644
---- a/drivers/acpi/tables.c
-+++ b/drivers/acpi/tables.c
-@@ -413,9 +413,17 @@ static int __init bad_madt_entry(struct acpi_table_header *table,
- 	}
- 
- 	if (entry->type >= ms->num_types) {
--		pr_err("undefined MADT subtable type for FADT %d.%d: %d (length %d)\n",
--		       major, minor, entry->type, entry->length);
--		return 1;
-+		if (IS_ENABLED(CONFIG_ARM64)) {
-+			/* Enforce this stricture on arm64... */
-+			pr_err("undefined MADT subtable type for FADT %d.%d: %d (length %d)\n",
-+			       major, minor, entry->type, entry->length);
-+			return 1;
-+		} else {
-+			/* ... but relax it on legacy systems so they boot */
-+			pr_warn("undefined MADT subtable type for FADT %d.%d: %d (length %d)\n",
-+			         major, minor, entry->type, entry->length);
-+			return 0;
-+		}
- 	}
- 
- 	/* verify that the table is allowed for this version of the spec */
--- 
-2.4.3
diff --git a/a/3.hdr b/a/3.hdr
deleted file mode 100644
index 8124d72..0000000
--- a/a/3.hdr
+++ /dev/null
@@ -1,6 +0,0 @@
-Content-Type: text/x-patch;
- name="0002-ACPI-workaround-x86-firmware-with-mis-matched-FADT-M.patch"
-Content-Transfer-Encoding: 7bit
-Content-Disposition: attachment;
- filename*0="0002-ACPI-workaround-x86-firmware-with-mis-matched-FADT-M.pa";
- filename*1="tch"
diff --git a/a/3.txt b/a/3.txt
deleted file mode 100644
index be920df..0000000
--- a/a/3.txt
+++ /dev/null
@@ -1,48 +0,0 @@
->From 8b7e93421a1bd3a35ed6200fb778b87e9bff34c5 Mon Sep 17 00:00:00 2001
-From: Al Stone <ahs3@redhat.com>
-Date: Tue, 13 Oct 2015 15:51:13 -0600
-Subject: [PATCH 2/4] ACPI: workaround x86 firmware with mis-matched FADT/MADT
- revisions
-
-Looking across multiple versions of the ACPI specification, certain
-versions introduce new revision numbers for the FADT and/or MADT
-tables.  So, for example, an FADT indicating it is revision 4 should
-not be paired with an MADT revision of anything less than 2.
-
-However, there are systems out there that do not update the revision
-fields in the FADT and MADT tables as they should.  So, for arm64, we
-can be stricter in complying with the specification, but we need to
-relax the checking for legacy systems.
-
-Signed-off-by: Al Stone <al.stone@linaro.org>
----
- drivers/acpi/tables.c | 14 +++++++++++---
- 1 file changed, 11 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c
-index e5cfd72..3b5ddfb 100644
---- a/drivers/acpi/tables.c
-+++ b/drivers/acpi/tables.c
-@@ -407,9 +407,17 @@ static int __init bad_madt_entry(struct acpi_table_header *table,
- 		ms++;
- 	}
- 	if (!ms->num_types) {
--		pr_err("undefined version for either FADT %d.%d or MADT %d\n",
--		       major, minor, madt->header.revision);
--		return 1;
-+		if (IS_ENABLED(CONFIG_ARM64)) {
-+			/* Enforce this stricture on arm64... */
-+			pr_err("undefined version for either FADT %d.%d or MADT %d\n",
-+			       major, minor, madt->header.revision);
-+			return 1;
-+		} else {
-+			/* ... but relax it on legacy systems so they boot */
-+			pr_warn("undefined version for either FADT %d.%d or MADT %d\n",
-+			        major, minor, madt->header.revision);
-+			return 0;
-+		}
- 	}
- 
- 	if (entry->type >= ms->num_types) {
--- 
-2.4.3
diff --git a/a/4.hdr b/a/4.hdr
deleted file mode 100644
index 2f0435c..0000000
--- a/a/4.hdr
+++ /dev/null
@@ -1,5 +0,0 @@
-Content-Type: text/x-patch;
- name="0003-ACPI-workaround-FADT-always-being-revision-2.patch"
-Content-Transfer-Encoding: 7bit
-Content-Disposition: attachment;
- filename="0003-ACPI-workaround-FADT-always-being-revision-2.patch"
diff --git a/a/4.txt b/a/4.txt
deleted file mode 100644
index 4d55e46..0000000
--- a/a/4.txt
+++ /dev/null
@@ -1,79 +0,0 @@
->From 773dd448360098b6faf6c171dd716371d603f3ef Mon Sep 17 00:00:00 2001
-From: Al Stone <ahs3@redhat.com>
-Date: Tue, 13 Oct 2015 16:23:21 -0600
-Subject: [PATCH 3/4] ACPI: workaround FADT always being revision 2
-
-In some environments, the FADT revision number is always 2, independent
-of any other factors indicating that it may be a newer revision.  So,
-we cannot rely on the FADT and MADT revisions being in proper step.  For
-those environments, relax the checking so we only enforce the size check,
-even if we do issue warnings on other problems.
-
-If we do not relax the rules, these systems will not boot as they have in
-the past.
-
-Signed-off-by: Al Stone <al.stone@linaro.org>
----
- drivers/acpi/tables.c | 34 +++++++++++++++++++++++++++++-----
- 1 file changed, 29 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c
-index 3b5ddfb..790d4b0 100644
---- a/drivers/acpi/tables.c
-+++ b/drivers/acpi/tables.c
-@@ -416,7 +416,6 @@ static int __init bad_madt_entry(struct acpi_table_header *table,
- 			/* ... but relax it on legacy systems so they boot */
- 			pr_warn("undefined version for either FADT %d.%d or MADT %d\n",
- 			        major, minor, madt->header.revision);
--			return 0;
- 		}
- 	}
- 
-@@ -430,16 +429,41 @@ static int __init bad_madt_entry(struct acpi_table_header *table,
- 			/* ... but relax it on legacy systems so they boot */
- 			pr_warn("undefined MADT subtable type for FADT %d.%d: %d (length %d)\n",
- 			         major, minor, entry->type, entry->length);
--			return 0;
- 		}
- 	}
- 
- 	/* verify that the table is allowed for this version of the spec */
- 	len = ms->lengths[entry->type];
- 	if (!len) {
--		pr_err("MADT subtable %d not defined for FADT %d.%d\n",
--			 entry->type, major, minor);
--		return 1;
-+		if (IS_ENABLED(CONFIG_ARM64)) {
-+			pr_err("MADT subtable %d not defined for FADT %d.%d\n",
-+			       entry->type, major, minor);
-+			return 1;
-+		} else {
-+			pr_warn("MADT subtable %d not defined for FADT %d.%d\n",
-+			        entry->type, major, minor);
-+		}
-+	}
-+
-+	/*
-+	 * When we get this far, we may have issued warnings on either
-+	 * a mismatch in FADT/MADT revisions, or have noted that the subtable
-+	 * ID is not defined for the MADT revision we're using.  On some
-+	 * architectures, this is an error, but for legacy systems, we need
-+	 * to push on with other checks of the subtable.
-+	 *
-+	 * In fact, there are environments where the *only* value the FADT
-+	 * revision will ever have is 2, regardless of anything else.  So,
-+	 * for those systems to boot, we have to pretend the MADT is the
-+	 * latest version to allow all known subtables since we have no way
-+	 * to determine what revision it should be.
-+	 */
-+	if (!IS_ENABLED(CONFIG_ARM64) && major == 2) {
-+		ms = spec_info;
-+		while (ms->num_types != 0)
-+			ms++;
-+		ms--;
-+		len = ms->lengths[entry->type];
- 	}
- 
- 	/* verify that the length is what we expect */
--- 
-2.4.3
diff --git a/a/5.hdr b/a/5.hdr
deleted file mode 100644
index 30f40dc..0000000
--- a/a/5.hdr
+++ /dev/null
@@ -1,6 +0,0 @@
-Content-Type: text/x-patch;
- name="0004-ACPI-for-bad_madt_entry-the-GIC-ITS-table-is-20-byte.patch"
-Content-Transfer-Encoding: 7bit
-Content-Disposition: attachment;
- filename*0="0004-ACPI-for-bad_madt_entry-the-GIC-ITS-table-is-20-byte.pa";
- filename*1="tch"
diff --git a/a/5.txt b/a/5.txt
deleted file mode 100644
index 584e51c..0000000
--- a/a/5.txt
+++ /dev/null
@@ -1,39 +0,0 @@
->From 6d3189ccfcbac9a61e6502df70499bd2ee808509 Mon Sep 17 00:00:00 2001
-From: Al Stone <ahs3@redhat.com>
-Date: Tue, 13 Oct 2015 16:31:50 -0600
-Subject: [PATCH 4/4] ACPI: for bad_madt_entry(), the GIC ITS table is 20 bytes
- long, not 16
-
-Correct a typo where bad_madt_entry() expected the MADT GIC ITS subtable
-to be 16 bytes long, but it is actually 20 bytes.  This is a cut'n'paste
-error picked up from the spec and inadvertently replicated in code.
-
-Signed-off-by: Al Stone <al.stone@linaro.org>
----
- drivers/acpi/tables.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c
-index 790d4b0..1b7c13e 100644
---- a/drivers/acpi/tables.c
-+++ b/drivers/acpi/tables.c
-@@ -292,7 +292,7 @@ void acpi_table_print_madt_entry(struct acpi_subtable_header *header)
-  * GICD                  0xc                         24    24    24
-  * GICv2m MSI            0xd                               24    24
-  * GICR                  0xe                               16    16
-- * GIC ITS               0xf                                     16
-+ * GIC ITS               0xf                                     20
-  *
-  * In the table, each length entry is what should be in the length
-  * field of the subtable, and -- in general -- it should match the
-@@ -366,7 +366,7 @@ static struct acpi_madt_subtable_lengths spec_info[] = {
- 		.madt_version = 3,
- 		.num_types = 16,
- 		.lengths = { 8, 12, 10, 8, 6, 12, 16, SUBTABLE_VARIABLE,
--			     16, 16, 12, 80, 24, 24, 16, 16 }
-+			     16, 16, 12, 80, 24, 24, 16, 20 }
- 	},
- 	{ /* terminator */
- 		.major_version = 0,
--- 
-2.4.3
diff --git a/a/content_digest b/N2/content_digest
index af2844e..3813f9f 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -8,23 +8,11 @@
  "ref\0561B2FCA.1010504@erley.org\0"
  "ref\0561C1D87.8010106@linaro.org\0"
  "ref\0561C8351.3030304@erley.org\0"
- "From\0Al Stone <ahs3@redhat.com>\0"
- "Subject\0Re: [Linaro-acpi] [PATCH v5 0/5] Provide better MADT subtable sanity checks\0"
+ "From\0ahs3@redhat.com (Al Stone)\0"
+ "Subject\0[Linaro-acpi] [PATCH v5 0/5] Provide better MADT subtable sanity checks\0"
  "Date\0Wed, 14 Oct 2015 14:20:51 -0600\0"
- "To\0Pat Erley <pat-lkml@erley.org>"
-  Al Stone <al.stone@linaro.org>
-  Hanjun Guo <hanjun.guo@linaro.org>
- " Rafael J. Wysocki <rjw@rjwysocki.net>\0"
- "Cc\0linaro-kernel@lists.linaro.org"
-  linux-ia64@vger.kernel.org
-  linaro-acpi@lists.linaro.org
-  linux-pm@vger.kernel.org
-  linux-kernel@vger.kernel.org
-  linux-acpi@vger.kernel.org
-  patches@linaro.org
-  Hanjun Guo <guohanjun@huawei.com>
- " linux-arm-kernel@lists.infradead.org\0"
- "\01:1\0"
+ "To\0linux-arm-kernel@lists.infradead.org\0"
+ "\00:1\0"
  "b\0"
  "On 10/12/2015 10:06 PM, Pat Erley wrote:\n"
  "> On 10/12/2015 01:52 PM, Al Stone wrote:\n"
@@ -123,233 +111,35 @@
  "Al Stone\n"
  "Software Engineer\n"
  "Red Hat, Inc.\n"
- "ahs3@redhat.com\n"
- -----------------------------------
- "\01:2\0"
- "fn\00001-ACPI-workaround-x86-firmware-using-reserved-MADT-sub.patch\0"
- "b\0"
- ">From 52a2011c4998674d80c4456e6fd8ba11beaee65c Mon Sep 17 00:00:00 2001\n"
- "From: Al Stone <ahs3@redhat.com>\n"
- "Date: Tue, 13 Oct 2015 15:29:15 -0600\n"
- "Subject: [PATCH 1/4] ACPI: workaround x86 firmware using reserved MADT\n"
- " subtable IDs\n"
- "\n"
- "According to the ACPI specification, version 6.0, table 5-46,  MADT\n"
- "subtable IDs in the range of 0x10-0x7f are reserved for possible\n"
- "future use by the specification.  The function bad_madt_entry() tries\n"
- "to enforce the spec, but it turns out there are x86 machines that use\n"
- "0x7f even though they should not.\n"
- "\n"
- "So, continue to enforce this rule for arm64, since we're starting out\n"
- "fresh, but relax it for systems already out there so we don't keep them\n"
- "from booting.\n"
- "\n"
- "Signed-off-by: Al Stone <al.stone@linaro.org>\n"
- "---\n"
- " drivers/acpi/tables.c | 14 +++++++++++---\n"
- " 1 file changed, 11 insertions(+), 3 deletions(-)\n"
- "\n"
- "diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c\n"
- "index a2ed38a..e5cfd72 100644\n"
- "--- a/drivers/acpi/tables.c\n"
- "+++ b/drivers/acpi/tables.c\n"
- "@@ -413,9 +413,17 @@ static int __init bad_madt_entry(struct acpi_table_header *table,\n"
- " \t}\n"
- " \n"
- " \tif (entry->type >= ms->num_types) {\n"
- "-\t\tpr_err(\"undefined MADT subtable type for FADT %d.%d: %d (length %d)\\n\",\n"
- "-\t\t       major, minor, entry->type, entry->length);\n"
- "-\t\treturn 1;\n"
- "+\t\tif (IS_ENABLED(CONFIG_ARM64)) {\n"
- "+\t\t\t/* Enforce this stricture on arm64... */\n"
- "+\t\t\tpr_err(\"undefined MADT subtable type for FADT %d.%d: %d (length %d)\\n\",\n"
- "+\t\t\t       major, minor, entry->type, entry->length);\n"
- "+\t\t\treturn 1;\n"
- "+\t\t} else {\n"
- "+\t\t\t/* ... but relax it on legacy systems so they boot */\n"
- "+\t\t\tpr_warn(\"undefined MADT subtable type for FADT %d.%d: %d (length %d)\\n\",\n"
- "+\t\t\t         major, minor, entry->type, entry->length);\n"
- "+\t\t\treturn 0;\n"
- "+\t\t}\n"
- " \t}\n"
- " \n"
- " \t/* verify that the table is allowed for this version of the spec */\n"
- "-- \n"
- 2.4.3
- "\01:3\0"
- "fn\00002-ACPI-workaround-x86-firmware-with-mis-matched-FADT-M.patch\0"
- "b\0"
- ">From 8b7e93421a1bd3a35ed6200fb778b87e9bff34c5 Mon Sep 17 00:00:00 2001\n"
- "From: Al Stone <ahs3@redhat.com>\n"
- "Date: Tue, 13 Oct 2015 15:51:13 -0600\n"
- "Subject: [PATCH 2/4] ACPI: workaround x86 firmware with mis-matched FADT/MADT\n"
- " revisions\n"
- "\n"
- "Looking across multiple versions of the ACPI specification, certain\n"
- "versions introduce new revision numbers for the FADT and/or MADT\n"
- "tables.  So, for example, an FADT indicating it is revision 4 should\n"
- "not be paired with an MADT revision of anything less than 2.\n"
- "\n"
- "However, there are systems out there that do not update the revision\n"
- "fields in the FADT and MADT tables as they should.  So, for arm64, we\n"
- "can be stricter in complying with the specification, but we need to\n"
- "relax the checking for legacy systems.\n"
- "\n"
- "Signed-off-by: Al Stone <al.stone@linaro.org>\n"
- "---\n"
- " drivers/acpi/tables.c | 14 +++++++++++---\n"
- " 1 file changed, 11 insertions(+), 3 deletions(-)\n"
- "\n"
- "diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c\n"
- "index e5cfd72..3b5ddfb 100644\n"
- "--- a/drivers/acpi/tables.c\n"
- "+++ b/drivers/acpi/tables.c\n"
- "@@ -407,9 +407,17 @@ static int __init bad_madt_entry(struct acpi_table_header *table,\n"
- " \t\tms++;\n"
- " \t}\n"
- " \tif (!ms->num_types) {\n"
- "-\t\tpr_err(\"undefined version for either FADT %d.%d or MADT %d\\n\",\n"
- "-\t\t       major, minor, madt->header.revision);\n"
- "-\t\treturn 1;\n"
- "+\t\tif (IS_ENABLED(CONFIG_ARM64)) {\n"
- "+\t\t\t/* Enforce this stricture on arm64... */\n"
- "+\t\t\tpr_err(\"undefined version for either FADT %d.%d or MADT %d\\n\",\n"
- "+\t\t\t       major, minor, madt->header.revision);\n"
- "+\t\t\treturn 1;\n"
- "+\t\t} else {\n"
- "+\t\t\t/* ... but relax it on legacy systems so they boot */\n"
- "+\t\t\tpr_warn(\"undefined version for either FADT %d.%d or MADT %d\\n\",\n"
- "+\t\t\t        major, minor, madt->header.revision);\n"
- "+\t\t\treturn 0;\n"
- "+\t\t}\n"
- " \t}\n"
- " \n"
- " \tif (entry->type >= ms->num_types) {\n"
- "-- \n"
- 2.4.3
- "\01:4\0"
- "fn\00003-ACPI-workaround-FADT-always-being-revision-2.patch\0"
- "b\0"
- ">From 773dd448360098b6faf6c171dd716371d603f3ef Mon Sep 17 00:00:00 2001\n"
- "From: Al Stone <ahs3@redhat.com>\n"
- "Date: Tue, 13 Oct 2015 16:23:21 -0600\n"
- "Subject: [PATCH 3/4] ACPI: workaround FADT always being revision 2\n"
- "\n"
- "In some environments, the FADT revision number is always 2, independent\n"
- "of any other factors indicating that it may be a newer revision.  So,\n"
- "we cannot rely on the FADT and MADT revisions being in proper step.  For\n"
- "those environments, relax the checking so we only enforce the size check,\n"
- "even if we do issue warnings on other problems.\n"
- "\n"
- "If we do not relax the rules, these systems will not boot as they have in\n"
- "the past.\n"
- "\n"
- "Signed-off-by: Al Stone <al.stone@linaro.org>\n"
- "---\n"
- " drivers/acpi/tables.c | 34 +++++++++++++++++++++++++++++-----\n"
- " 1 file changed, 29 insertions(+), 5 deletions(-)\n"
- "\n"
- "diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c\n"
- "index 3b5ddfb..790d4b0 100644\n"
- "--- a/drivers/acpi/tables.c\n"
- "+++ b/drivers/acpi/tables.c\n"
- "@@ -416,7 +416,6 @@ static int __init bad_madt_entry(struct acpi_table_header *table,\n"
- " \t\t\t/* ... but relax it on legacy systems so they boot */\n"
- " \t\t\tpr_warn(\"undefined version for either FADT %d.%d or MADT %d\\n\",\n"
- " \t\t\t        major, minor, madt->header.revision);\n"
- "-\t\t\treturn 0;\n"
- " \t\t}\n"
- " \t}\n"
- " \n"
- "@@ -430,16 +429,41 @@ static int __init bad_madt_entry(struct acpi_table_header *table,\n"
- " \t\t\t/* ... but relax it on legacy systems so they boot */\n"
- " \t\t\tpr_warn(\"undefined MADT subtable type for FADT %d.%d: %d (length %d)\\n\",\n"
- " \t\t\t         major, minor, entry->type, entry->length);\n"
- "-\t\t\treturn 0;\n"
- " \t\t}\n"
- " \t}\n"
- " \n"
- " \t/* verify that the table is allowed for this version of the spec */\n"
- " \tlen = ms->lengths[entry->type];\n"
- " \tif (!len) {\n"
- "-\t\tpr_err(\"MADT subtable %d not defined for FADT %d.%d\\n\",\n"
- "-\t\t\t entry->type, major, minor);\n"
- "-\t\treturn 1;\n"
- "+\t\tif (IS_ENABLED(CONFIG_ARM64)) {\n"
- "+\t\t\tpr_err(\"MADT subtable %d not defined for FADT %d.%d\\n\",\n"
- "+\t\t\t       entry->type, major, minor);\n"
- "+\t\t\treturn 1;\n"
- "+\t\t} else {\n"
- "+\t\t\tpr_warn(\"MADT subtable %d not defined for FADT %d.%d\\n\",\n"
- "+\t\t\t        entry->type, major, minor);\n"
- "+\t\t}\n"
- "+\t}\n"
- "+\n"
- "+\t/*\n"
- "+\t * When we get this far, we may have issued warnings on either\n"
- "+\t * a mismatch in FADT/MADT revisions, or have noted that the subtable\n"
- "+\t * ID is not defined for the MADT revision we're using.  On some\n"
- "+\t * architectures, this is an error, but for legacy systems, we need\n"
- "+\t * to push on with other checks of the subtable.\n"
- "+\t *\n"
- "+\t * In fact, there are environments where the *only* value the FADT\n"
- "+\t * revision will ever have is 2, regardless of anything else.  So,\n"
- "+\t * for those systems to boot, we have to pretend the MADT is the\n"
- "+\t * latest version to allow all known subtables since we have no way\n"
- "+\t * to determine what revision it should be.\n"
- "+\t */\n"
- "+\tif (!IS_ENABLED(CONFIG_ARM64) && major == 2) {\n"
- "+\t\tms = spec_info;\n"
- "+\t\twhile (ms->num_types != 0)\n"
- "+\t\t\tms++;\n"
- "+\t\tms--;\n"
- "+\t\tlen = ms->lengths[entry->type];\n"
- " \t}\n"
- " \n"
- " \t/* verify that the length is what we expect */\n"
- "-- \n"
- 2.4.3
- "\01:5\0"
- "fn\00004-ACPI-for-bad_madt_entry-the-GIC-ITS-table-is-20-byte.patch\0"
- "b\0"
- ">From 6d3189ccfcbac9a61e6502df70499bd2ee808509 Mon Sep 17 00:00:00 2001\n"
- "From: Al Stone <ahs3@redhat.com>\n"
- "Date: Tue, 13 Oct 2015 16:31:50 -0600\n"
- "Subject: [PATCH 4/4] ACPI: for bad_madt_entry(), the GIC ITS table is 20 bytes\n"
- " long, not 16\n"
- "\n"
- "Correct a typo where bad_madt_entry() expected the MADT GIC ITS subtable\n"
- "to be 16 bytes long, but it is actually 20 bytes.  This is a cut'n'paste\n"
- "error picked up from the spec and inadvertently replicated in code.\n"
- "\n"
- "Signed-off-by: Al Stone <al.stone@linaro.org>\n"
- "---\n"
- " drivers/acpi/tables.c | 4 ++--\n"
- " 1 file changed, 2 insertions(+), 2 deletions(-)\n"
- "\n"
- "diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c\n"
- "index 790d4b0..1b7c13e 100644\n"
- "--- a/drivers/acpi/tables.c\n"
- "+++ b/drivers/acpi/tables.c\n"
- "@@ -292,7 +292,7 @@ void acpi_table_print_madt_entry(struct acpi_subtable_header *header)\n"
- "  * GICD                  0xc                         24    24    24\n"
- "  * GICv2m MSI            0xd                               24    24\n"
- "  * GICR                  0xe                               16    16\n"
- "- * GIC ITS               0xf                                     16\n"
- "+ * GIC ITS               0xf                                     20\n"
- "  *\n"
- "  * In the table, each length entry is what should be in the length\n"
- "  * field of the subtable, and -- in general -- it should match the\n"
- "@@ -366,7 +366,7 @@ static struct acpi_madt_subtable_lengths spec_info[] = {\n"
- " \t\t.madt_version = 3,\n"
- " \t\t.num_types = 16,\n"
- " \t\t.lengths = { 8, 12, 10, 8, 6, 12, 16, SUBTABLE_VARIABLE,\n"
- "-\t\t\t     16, 16, 12, 80, 24, 24, 16, 16 }\n"
- "+\t\t\t     16, 16, 12, 80, 24, 24, 16, 20 }\n"
- " \t},\n"
- " \t{ /* terminator */\n"
- " \t\t.major_version = 0,\n"
- "-- \n"
- 2.4.3
+ "ahs3 at redhat.com\n"
+ "-----------------------------------\n"
+ "-------------- next part --------------\n"
+ "A non-text attachment was scrubbed...\n"
+ "Name: 0001-ACPI-workaround-x86-firmware-using-reserved-MADT-sub.patch\n"
+ "Type: text/x-patch\n"
+ "Size: 1788 bytes\n"
+ "Desc: not available\n"
+ "URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151014/461d0443/attachment-0004.bin>\n"
+ "-------------- next part --------------\n"
+ "A non-text attachment was scrubbed...\n"
+ "Name: 0002-ACPI-workaround-x86-firmware-with-mis-matched-FADT-M.patch\n"
+ "Type: text/x-patch\n"
+ "Size: 1756 bytes\n"
+ "Desc: not available\n"
+ "URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151014/461d0443/attachment-0005.bin>\n"
+ "-------------- next part --------------\n"
+ "A non-text attachment was scrubbed...\n"
+ "Name: 0003-ACPI-workaround-FADT-always-being-revision-2.patch\n"
+ "Type: text/x-patch\n"
+ "Size: 2909 bytes\n"
+ "Desc: not available\n"
+ "URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151014/461d0443/attachment-0006.bin>\n"
+ "-------------- next part --------------\n"
+ "A non-text attachment was scrubbed...\n"
+ "Name: 0004-ACPI-for-bad_madt_entry-the-GIC-ITS-table-is-20-byte.patch\n"
+ "Type: text/x-patch\n"
+ "Size: 1627 bytes\n"
+ "Desc: not available\n"
+ URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151014/461d0443/attachment-0007.bin>
 
-85546ec3f0bad433bac00109ffeeb2d93b3548062816186ba92e1e451bbbaa2d
+66a287544c594bccb9a0f21bf354501149dae027b0fdc475c968b7e8b18aaeb3

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.