From: Toshi Kani <toshi.kani@hpe.com> To: rjw@rjwysocki.net, bp@alien8.de Cc: mchehab@kernel.org, tglx@linutronix.de, srinivas.pandruvada@linux.intel.com, lenb@kernel.org, linux-acpi@vger.kernel.org, linux-edac@vger.kernel.org, linux-kernel@vger.kernel.org, Toshi Kani <toshi.kani@hpe.com> Subject: [PATCH 3/3] ghes_edac: add platform check to enable ghes_edac Date: Mon, 17 Jul 2017 15:59:12 -0600 [thread overview] Message-ID: <20170717215912.26070-4-toshi.kani@hpe.com> (raw) In-Reply-To: <20170717215912.26070-1-toshi.kani@hpe.com> The ghes_edac driver was introduced in 2013 [1], but it has not been enabled by any distro yet. This driver obtains error info from firmware interfaces, which are not properly implemented on many platforms, as the driver always emits the messages below: This EDAC driver relies on BIOS to enumerate memory and get error reports. Unfortunately, not all BIOSes reflect the memory layout correctly So, the end result of using this driver varies from vendor to vendor If you find incorrect reports, please contact your hardware vendor to correct its BIOS. To get out from this situation, add a platform type check to selectively enable the driver on the platforms that are known to have proper firmware implementation. Platform vendors can add their platforms to the list when they support ghes_edac. "ghes_edac.any_oem=1" skips the platform type check. [1]: https://lwn.net/Articles/538438/ Signed-off-by: Toshi Kani <toshi.kani@hpe.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Mauro Carvalho Chehab <mchehab@kernel.org> Cc: Thomas Gleixner <tglx@linutronix.de> --- drivers/edac/ghes_edac.c | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/drivers/edac/ghes_edac.c b/drivers/edac/ghes_edac.c index 4e61a62..00588a3 100644 --- a/drivers/edac/ghes_edac.c +++ b/drivers/edac/ghes_edac.c @@ -34,6 +34,9 @@ static LIST_HEAD(ghes_reglist); static DEFINE_MUTEX(ghes_edac_lock); static int ghes_edac_mc_num; +/* Set 1 to skip the platform check */ +static bool __read_mostly ghes_edac_any_oem; +module_param_named(any_oem, ghes_edac_any_oem, bool, 0); /* Memory Device - Type 17 of SMBIOS spec */ struct memdev_dmi_entry { @@ -405,6 +408,15 @@ void ghes_edac_report_mem_error(struct ghes *ghes, int sev, } EXPORT_SYMBOL_GPL(ghes_edac_report_mem_error); +/* + * Known systems that are safe to enable this module. + * "ghes_edac.any_oem=1" skips this check if necessary. + */ +static struct acpi_oemlist oemlist[] = { + {"HPE ", "Server ", 0, ACPI_SIG_FADT, all_versions}, + { } /* End */ +}; + int ghes_edac_register(struct ghes *ghes, struct device *dev) { bool fake = false; @@ -413,6 +425,12 @@ int ghes_edac_register(struct ghes *ghes, struct device *dev) struct edac_mc_layer layers[1]; struct ghes_edac_pvt *pvt; struct ghes_edac_dimm_fill dimm_fill; + int idx; + + /* Check if safe to enable on this system */ + idx = acpi_match_oemlist(oemlist); + if (!ghes_edac_any_oem && idx < 0) + return 0; /* Get the number of DIMMs */ dmi_walk(ghes_edac_count_dimms, &num_dimm); @@ -456,7 +474,11 @@ int ghes_edac_register(struct ghes *ghes, struct device *dev) mci->dev_name = "ghes"; if (!ghes_edac_mc_num) { - if (!fake) { + if (fake) { + pr_info("This system has a very crappy BIOS: It doesn't even list the DIMMS.\n"); + pr_info("Its SMBIOS info is wrong. It is doubtful that the error report would\n"); + pr_info("work on such system. Use this driver with caution\n"); + } else if (idx < 0) { pr_info("This EDAC driver relies on BIOS to enumerate memory and get error reports.\n"); pr_info("Unfortunately, not all BIOSes reflect the memory layout correctly.\n"); pr_info("So, the end result of using this driver varies from vendor to vendor.\n"); @@ -464,10 +486,6 @@ int ghes_edac_register(struct ghes *ghes, struct device *dev) pr_info("to correct its BIOS.\n"); pr_info("This system has %d DIMM sockets.\n", num_dimm); - } else { - pr_info("This system has a very crappy BIOS: It doesn't even list the DIMMS.\n"); - pr_info("Its SMBIOS info is wrong. It is doubtful that the error report would\n"); - pr_info("work on such system. Use this driver with caution\n"); } }
WARNING: multiple messages have this Message-ID (diff)
From: Toshi Kani <toshi.kani@hpe.com> To: rjw@rjwysocki.net, bp@alien8.de Cc: mchehab@kernel.org, tglx@linutronix.de, srinivas.pandruvada@linux.intel.com, lenb@kernel.org, linux-acpi@vger.kernel.org, linux-edac@vger.kernel.org, linux-kernel@vger.kernel.org, Toshi Kani <toshi.kani@hpe.com> Subject: [3/3] ghes_edac: add platform check to enable ghes_edac Date: Mon, 17 Jul 2017 15:59:12 -0600 [thread overview] Message-ID: <20170717215912.26070-4-toshi.kani@hpe.com> (raw) The ghes_edac driver was introduced in 2013 [1], but it has not been enabled by any distro yet. This driver obtains error info from firmware interfaces, which are not properly implemented on many platforms, as the driver always emits the messages below: This EDAC driver relies on BIOS to enumerate memory and get error reports. Unfortunately, not all BIOSes reflect the memory layout correctly So, the end result of using this driver varies from vendor to vendor If you find incorrect reports, please contact your hardware vendor to correct its BIOS. To get out from this situation, add a platform type check to selectively enable the driver on the platforms that are known to have proper firmware implementation. Platform vendors can add their platforms to the list when they support ghes_edac. "ghes_edac.any_oem=1" skips the platform type check. [1]: https://lwn.net/Articles/538438/ Signed-off-by: Toshi Kani <toshi.kani@hpe.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Mauro Carvalho Chehab <mchehab@kernel.org> Cc: Thomas Gleixner <tglx@linutronix.de> --- drivers/edac/ghes_edac.c | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-edac" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/edac/ghes_edac.c b/drivers/edac/ghes_edac.c index 4e61a62..00588a3 100644 --- a/drivers/edac/ghes_edac.c +++ b/drivers/edac/ghes_edac.c @@ -34,6 +34,9 @@ static LIST_HEAD(ghes_reglist); static DEFINE_MUTEX(ghes_edac_lock); static int ghes_edac_mc_num; +/* Set 1 to skip the platform check */ +static bool __read_mostly ghes_edac_any_oem; +module_param_named(any_oem, ghes_edac_any_oem, bool, 0); /* Memory Device - Type 17 of SMBIOS spec */ struct memdev_dmi_entry { @@ -405,6 +408,15 @@ void ghes_edac_report_mem_error(struct ghes *ghes, int sev, } EXPORT_SYMBOL_GPL(ghes_edac_report_mem_error); +/* + * Known systems that are safe to enable this module. + * "ghes_edac.any_oem=1" skips this check if necessary. + */ +static struct acpi_oemlist oemlist[] = { + {"HPE ", "Server ", 0, ACPI_SIG_FADT, all_versions}, + { } /* End */ +}; + int ghes_edac_register(struct ghes *ghes, struct device *dev) { bool fake = false; @@ -413,6 +425,12 @@ int ghes_edac_register(struct ghes *ghes, struct device *dev) struct edac_mc_layer layers[1]; struct ghes_edac_pvt *pvt; struct ghes_edac_dimm_fill dimm_fill; + int idx; + + /* Check if safe to enable on this system */ + idx = acpi_match_oemlist(oemlist); + if (!ghes_edac_any_oem && idx < 0) + return 0; /* Get the number of DIMMs */ dmi_walk(ghes_edac_count_dimms, &num_dimm); @@ -456,7 +474,11 @@ int ghes_edac_register(struct ghes *ghes, struct device *dev) mci->dev_name = "ghes"; if (!ghes_edac_mc_num) { - if (!fake) { + if (fake) { + pr_info("This system has a very crappy BIOS: It doesn't even list the DIMMS.\n"); + pr_info("Its SMBIOS info is wrong. It is doubtful that the error report would\n"); + pr_info("work on such system. Use this driver with caution\n"); + } else if (idx < 0) { pr_info("This EDAC driver relies on BIOS to enumerate memory and get error reports.\n"); pr_info("Unfortunately, not all BIOSes reflect the memory layout correctly.\n"); pr_info("So, the end result of using this driver varies from vendor to vendor.\n"); @@ -464,10 +486,6 @@ int ghes_edac_register(struct ghes *ghes, struct device *dev) pr_info("to correct its BIOS.\n"); pr_info("This system has %d DIMM sockets.\n", num_dimm); - } else { - pr_info("This system has a very crappy BIOS: It doesn't even list the DIMMS.\n"); - pr_info("Its SMBIOS info is wrong. It is doubtful that the error report would\n"); - pr_info("work on such system. Use this driver with caution\n"); } }
next prev parent reply other threads:[~2017-07-17 21:59 UTC|newest] Thread overview: 238+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-07-17 21:59 [PATCH 0/3] enable ghes_edac on selected platforms Toshi Kani 2017-07-17 21:59 ` [PATCH 1/3] ACPI / blacklist: add acpi_match_oemlist() interface Toshi Kani 2017-07-17 21:59 ` [1/3] " Toshi Kani 2017-07-18 5:34 ` [PATCH 1/3] " Borislav Petkov 2017-07-18 5:34 ` [1/3] " Borislav Petkov 2017-07-18 15:48 ` [PATCH 1/3] " Kani, Toshimitsu 2017-07-18 15:48 ` [1/3] " Toshi Kani 2017-07-18 15:48 ` [PATCH 1/3] " Kani, Toshimitsu 2017-07-18 16:43 ` Borislav Petkov 2017-07-18 16:43 ` [1/3] " Borislav Petkov 2017-07-18 16:43 ` [PATCH 1/3] " Borislav Petkov 2017-07-18 17:24 ` Kani, Toshimitsu 2017-07-18 17:24 ` [1/3] " Toshi Kani 2017-07-18 17:24 ` [PATCH 1/3] " Kani, Toshimitsu 2017-07-18 17:42 ` Borislav Petkov 2017-07-18 17:42 ` [1/3] " Borislav Petkov 2017-07-18 17:42 ` [PATCH 1/3] " Borislav Petkov 2017-07-18 18:49 ` Kani, Toshimitsu 2017-07-18 18:49 ` [1/3] " Toshi Kani 2017-07-18 18:49 ` [PATCH 1/3] " Kani, Toshimitsu 2017-07-18 19:32 ` Borislav Petkov 2017-07-18 19:32 ` [1/3] " Borislav Petkov 2017-07-18 19:32 ` [PATCH 1/3] " Borislav Petkov 2017-07-18 20:17 ` Kani, Toshimitsu 2017-07-18 20:17 ` [1/3] " Toshi Kani 2017-07-18 20:17 ` [PATCH 1/3] " Kani, Toshimitsu 2017-07-17 21:59 ` [PATCH 2/3] intel_pstate: convert to use acpi_match_oemlist() Toshi Kani 2017-07-17 21:59 ` [2/3] " Toshi Kani 2017-07-17 21:59 ` Toshi Kani [this message] 2017-07-17 21:59 ` [3/3] ghes_edac: add platform check to enable ghes_edac Toshi Kani 2017-07-18 6:00 ` [PATCH 3/3] " Borislav Petkov 2017-07-18 6:00 ` [3/3] " Borislav Petkov 2017-07-18 8:08 ` [PATCH 3/3] " Borislav Petkov 2017-07-18 8:08 ` [3/3] " Borislav Petkov 2017-07-18 21:20 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-18 21:20 ` [3/3] " Toshi Kani 2017-07-18 21:20 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-19 5:52 ` Borislav Petkov 2017-07-19 5:52 ` [3/3] " Borislav Petkov 2017-07-19 5:52 ` [PATCH 3/3] " Borislav Petkov 2017-07-19 16:10 ` Kani, Toshimitsu 2017-07-19 16:10 ` [3/3] " Toshi Kani 2017-07-19 16:10 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-19 16:22 ` Borislav Petkov 2017-07-19 16:22 ` [3/3] " Borislav Petkov 2017-07-19 16:22 ` [PATCH 3/3] " Borislav Petkov 2017-07-19 16:56 ` Kani, Toshimitsu 2017-07-19 16:56 ` [3/3] " Toshi Kani 2017-07-19 16:56 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-20 4:16 ` Borislav Petkov 2017-07-20 4:16 ` [3/3] " Borislav Petkov 2017-07-20 4:16 ` [PATCH 3/3] " Borislav Petkov 2017-07-20 14:42 ` Kani, Toshimitsu 2017-07-20 14:42 ` [3/3] " Toshi Kani 2017-07-20 14:42 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-20 15:04 ` Borislav Petkov 2017-07-20 15:04 ` [3/3] " Borislav Petkov 2017-07-20 15:04 ` [PATCH 3/3] " Borislav Petkov 2017-07-20 16:55 ` Luck, Tony 2017-07-20 16:55 ` [3/3] " Luck, Tony 2017-07-20 16:55 ` [PATCH 3/3] " Luck, Tony 2017-07-20 17:05 ` Borislav Petkov 2017-07-20 17:05 ` [3/3] " Borislav Petkov 2017-07-20 17:05 ` [PATCH 3/3] " Borislav Petkov 2017-07-20 17:10 ` Luck, Tony 2017-07-20 17:10 ` [3/3] " Luck, Tony 2017-07-20 17:10 ` [PATCH 3/3] " Luck, Tony 2017-07-20 18:16 ` Mauro Carvalho Chehab 2017-07-20 18:16 ` [3/3] " Mauro Carvalho Chehab 2017-07-20 18:16 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-19 18:55 ` Aristeu Rozanski 2017-07-19 18:55 ` [3/3] " Aristeu Rozanski 2017-07-19 18:55 ` [PATCH 3/3] " Aristeu Rozanski 2017-07-19 20:13 ` Kani, Toshimitsu 2017-07-19 20:13 ` [3/3] " Toshi Kani 2017-07-19 20:13 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-20 4:19 ` Borislav Petkov 2017-07-20 4:19 ` [3/3] " Borislav Petkov 2017-07-20 4:19 ` [PATCH 3/3] " Borislav Petkov 2017-07-18 19:58 ` Kani, Toshimitsu 2017-07-18 19:58 ` [3/3] " Toshi Kani 2017-07-18 19:58 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-18 21:15 ` Mauro Carvalho Chehab 2017-07-18 21:15 ` [3/3] " Mauro Carvalho Chehab 2017-07-18 21:15 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-19 5:58 ` Borislav Petkov 2017-07-19 5:58 ` [3/3] " Borislav Petkov 2017-07-19 5:58 ` [PATCH 3/3] " Borislav Petkov 2017-07-19 15:14 ` Luck, Tony 2017-07-19 15:14 ` [3/3] " Luck, Tony 2017-07-19 15:14 ` [PATCH 3/3] " Luck, Tony 2017-07-19 15:57 ` Borislav Petkov 2017-07-19 15:57 ` [3/3] " Borislav Petkov 2017-07-19 15:57 ` [PATCH 3/3] " Borislav Petkov 2017-07-19 18:06 ` Luck, Tony 2017-07-19 18:06 ` [3/3] " Luck, Tony 2017-07-19 18:06 ` [PATCH 3/3] " Luck, Tony 2017-07-19 16:02 ` Mauro Carvalho Chehab 2017-07-19 16:02 ` [3/3] " Mauro Carvalho Chehab 2017-07-19 20:06 ` [PATCH 3/3] " Luck, Tony 2017-07-19 20:06 ` [3/3] " Luck, Tony 2017-07-20 21:15 ` [PATCH 3/3] " Luck, Tony 2017-07-20 21:15 ` [3/3] " Luck, Tony 2017-07-21 0:00 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-21 0:00 ` [3/3] " Mauro Carvalho Chehab 2017-07-21 16:53 ` [PATCH 3/3] " Luck, Tony 2017-07-21 16:53 ` [3/3] " Luck, Tony 2017-07-19 16:40 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-19 16:40 ` [3/3] " Toshi Kani 2017-07-19 16:40 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-20 4:33 ` Borislav Petkov 2017-07-20 4:33 ` [3/3] " Borislav Petkov 2017-07-20 4:33 ` [PATCH 3/3] " Borislav Petkov 2017-07-20 19:50 ` Kani, Toshimitsu 2017-07-20 19:50 ` [3/3] " Toshi Kani 2017-07-20 19:50 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-20 20:15 ` Mauro Carvalho Chehab 2017-07-20 20:15 ` [3/3] " Mauro Carvalho Chehab 2017-07-20 20:15 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-20 21:07 ` Kani, Toshimitsu 2017-07-20 21:07 ` [3/3] " Toshi Kani 2017-07-20 21:07 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-21 13:34 ` Borislav Petkov 2017-07-21 13:34 ` [3/3] " Borislav Petkov 2017-07-21 13:34 ` [PATCH 3/3] " Borislav Petkov 2017-07-21 13:40 ` Mauro Carvalho Chehab 2017-07-21 13:40 ` [3/3] " Mauro Carvalho Chehab 2017-07-21 13:40 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-21 13:47 ` Borislav Petkov 2017-07-21 13:47 ` [3/3] " Borislav Petkov 2017-07-21 13:47 ` [PATCH 3/3] " Borislav Petkov 2017-07-21 15:08 ` Kani, Toshimitsu 2017-07-21 15:08 ` [3/3] " Toshi Kani 2017-07-21 15:08 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-21 15:13 ` Borislav Petkov 2017-07-21 15:13 ` [3/3] " Borislav Petkov 2017-07-21 15:13 ` [PATCH 3/3] " Borislav Petkov 2017-07-21 15:34 ` Kani, Toshimitsu 2017-07-21 15:34 ` [3/3] " Toshi Kani 2017-07-21 15:34 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-21 15:44 ` Mauro Carvalho Chehab 2017-07-21 15:44 ` [3/3] " Mauro Carvalho Chehab 2017-07-21 15:44 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-21 16:40 ` Kani, Toshimitsu 2017-07-21 16:40 ` [3/3] " Toshi Kani 2017-07-21 16:40 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-21 17:01 ` Mauro Carvalho Chehab 2017-07-21 17:01 ` [3/3] " Mauro Carvalho Chehab 2017-07-21 17:01 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-21 17:21 ` Kani, Toshimitsu 2017-07-21 17:21 ` [3/3] " Toshi Kani 2017-07-21 17:21 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-21 17:23 ` Borislav Petkov 2017-07-21 17:23 ` [3/3] " Borislav Petkov 2017-07-21 17:23 ` [PATCH 3/3] " Borislav Petkov 2017-07-21 18:38 ` Kani, Toshimitsu 2017-07-21 18:38 ` [3/3] " Toshi Kani 2017-07-21 18:38 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-22 6:28 ` Borislav Petkov 2017-07-22 6:28 ` [3/3] " Borislav Petkov 2017-07-22 6:28 ` [PATCH 3/3] " Borislav Petkov 2017-07-24 14:49 ` Kani, Toshimitsu 2017-07-24 14:49 ` [3/3] " Toshi Kani 2017-07-24 14:49 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-24 15:04 ` Borislav Petkov 2017-07-24 15:04 ` [3/3] " Borislav Petkov 2017-07-24 15:04 ` [PATCH 3/3] " Borislav Petkov 2017-07-24 15:25 ` Kani, Toshimitsu 2017-07-24 15:25 ` [3/3] " Toshi Kani 2017-07-24 15:25 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-24 15:37 ` Borislav Petkov 2017-07-24 15:37 ` [3/3] " Borislav Petkov 2017-07-24 15:37 ` [PATCH 3/3] " Borislav Petkov 2017-07-24 15:56 ` Kani, Toshimitsu 2017-07-24 15:56 ` [3/3] " Toshi Kani 2017-07-24 15:56 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-24 16:37 ` Borislav Petkov 2017-07-24 16:37 ` [3/3] " Borislav Petkov 2017-07-24 16:37 ` [PATCH 3/3] " Borislav Petkov 2017-07-24 17:44 ` Kani, Toshimitsu 2017-07-24 17:44 ` [3/3] " Toshi Kani 2017-07-24 17:44 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-24 17:50 ` Boris Petkov 2017-07-24 17:50 ` [3/3] " Borislav Petkov 2017-07-24 17:50 ` [PATCH 3/3] " Boris Petkov 2017-07-24 17:54 ` Kani, Toshimitsu 2017-07-24 17:54 ` [3/3] " Toshi Kani 2017-07-24 17:54 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-24 18:18 ` Borislav Petkov 2017-07-24 18:18 ` [3/3] " Borislav Petkov 2017-07-24 18:18 ` [PATCH 3/3] " Borislav Petkov 2017-07-24 17:56 ` Mauro Carvalho Chehab 2017-07-24 17:56 ` [3/3] " Mauro Carvalho Chehab 2017-07-24 17:56 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-24 18:12 ` Kani, Toshimitsu 2017-07-24 18:12 ` [3/3] " Toshi Kani 2017-07-24 18:12 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-24 16:04 ` Mauro Carvalho Chehab 2017-07-24 16:04 ` [3/3] " Mauro Carvalho Chehab 2017-07-24 16:04 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-24 16:44 ` Borislav Petkov 2017-07-24 16:44 ` [3/3] " Borislav Petkov 2017-07-24 16:44 ` [PATCH 3/3] " Borislav Petkov 2017-07-24 18:10 ` Mauro Carvalho Chehab 2017-07-24 18:10 ` [3/3] " Mauro Carvalho Chehab 2017-07-24 18:10 ` [PATCH 3/3] " Mauro Carvalho Chehab 2017-07-24 18:30 ` Borislav Petkov 2017-07-24 18:30 ` [3/3] " Borislav Petkov 2017-07-24 18:30 ` [PATCH 3/3] " Borislav Petkov 2017-07-25 23:00 ` Kani, Toshimitsu 2017-07-25 23:00 ` [3/3] " Toshi Kani 2017-07-25 23:00 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-21 15:53 ` Borislav Petkov 2017-07-21 15:53 ` [3/3] " Borislav Petkov 2017-07-21 15:53 ` [PATCH 3/3] " Borislav Petkov 2017-07-21 16:32 ` Kani, Toshimitsu 2017-07-21 16:32 ` [3/3] " Toshi Kani 2017-07-21 16:32 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-19 5:55 ` Borislav Petkov 2017-07-19 5:55 ` [3/3] " Borislav Petkov 2017-07-19 5:55 ` [PATCH 3/3] " Borislav Petkov 2017-07-18 22:13 ` Luck, Tony 2017-07-18 22:13 ` [3/3] " Luck, Tony 2017-07-18 22:13 ` [PATCH 3/3] " Luck, Tony 2017-07-19 6:01 ` Borislav Petkov 2017-07-19 6:01 ` [3/3] " Borislav Petkov 2017-07-19 6:01 ` [PATCH 3/3] " Borislav Petkov 2017-07-18 14:39 ` Jeffrey Hugo 2017-07-18 14:39 ` [3/3] " Jeffrey Hugo 2017-07-18 15:36 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-18 15:36 ` [3/3] " Toshi Kani 2017-07-18 15:36 ` [PATCH 3/3] " Kani, Toshimitsu 2017-07-18 16:24 ` Jeffrey Hugo 2017-07-18 16:24 ` [3/3] " Jeffrey Hugo 2017-07-18 16:24 ` [PATCH 3/3] " Jeffrey Hugo 2017-07-18 16:42 ` Kani, Toshimitsu 2017-07-18 16:42 ` [3/3] " Toshi Kani 2017-07-18 16:42 ` [PATCH 3/3] " Kani, Toshimitsu
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20170717215912.26070-4-toshi.kani@hpe.com \ --to=toshi.kani@hpe.com \ --cc=bp@alien8.de \ --cc=lenb@kernel.org \ --cc=linux-acpi@vger.kernel.org \ --cc=linux-edac@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mchehab@kernel.org \ --cc=rjw@rjwysocki.net \ --cc=srinivas.pandruvada@linux.intel.com \ --cc=tglx@linutronix.de \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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.