-----Original Message----- From: Linux-nvdimm [mailto:linux-nvdimm-bounces@lists.01.org] On Behalf Of Vishal Verma Sent: Thursday, October 25, 2018 1:06 PM
...
+++ b/drivers/acpi/nfit/mce.c @@ -25,8 +25,8 @@ static int nfit_handle_mce(struct notifier_block *nb, unsigned long val, struct acpi_nfit_desc *acpi_desc; struct nfit_spa *nfit_spa;
- /* We only care about memory errors */
- if (!mce_is_memory_error(mce))
- /* We only care about uncorrectable memory errors */
- if (!mce_is_memory_error(mce) || mce_is_correctable(mce)) return NOTIFY_DONE;
Another function that calls those functions, cec_add_mce(), also calls mce_usable_address() to ensure the address valid bit is set. It doesn't look like nfit_handle_mce() ever confirms that before proceeding to use mce->addr (if it gets through that if statement).
--- Robert Elliott, HPE Persistent Memory