On 07/01/2013 09:08 PM, Borislav Petkov wrote:
On Mon, Jul 01, 2013 at 08:37:43PM +0530, Naveen N. Rao wrote:
On 06/28/2013 11:01 PM, Tony Luck wrote:
+                       if (sec_sev == GHES_SEV_CORRECTED &&
+                           (gdata->flags & CPER_SEC_ERROR_THRESHOLD_EXCEEDED) 
&&
+                           (mem_err->validation_bits & 
CPER_MEM_VALID_PHYSICAL_ADDRESS)) {
+                               unsigned long pfn;
+                               pfn = mem_err->physical_addr >> PAGE_SHIFT;

As Reagan said "Trust ... but verify" ... we should make sure BIOS
gave us a good pfn
                                     if (pfn_valid(pfn))
                                          soft_memory_failure_queue(pfn, 0, 0);
                                     else
                                          printk( ...something about
BIOS giving us bad pfn = %lu\n", pfn);

Ah, nice catch - I thought soft_offline_page() takes care of this,
but it sure is good to point a finger at the firmware.

While at it maybe make it pr_warning(FW_BUG or FW_WARN...

Yup - I've made it a pr_warning(FW_WARN... I just sent out a new version with these changes.

Thanks,
Naveen

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to