if (!mce || !mce_usable_address(mce)) return NOTIFY_DONE;
if (!endpoint) return NOTIFY_DONE;
spa = mce->addr & MCI_ADDR_PHYSADDR;
pfn = spa >> PAGE_SHIFT; if (!pfn_valid(pfn)) return NOTIFY_DONE;
spa_alias = cxl_port_get_spa_cache_alias(endpoint, spa); if (spa_alias == ~0ULL) return NOTIFY_DONE;
pfn = spa_alias >> PAGE_SHIFT;
/* * Take down the aliased memory page. The original memory page flagged * by the MCE will be taken cared of by the standard MCE handler.
*/
dev_emerg(mds->cxlds.dev, "Offlining aliased SPA address0: %#llx\n",
spa_alias); if (!memory_failure(pfn, 0))
set_mce_nospec(pfn);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.