Lines Matching refs:mem_err
243 void ghes_edac_report_mem_error(int sev, struct cper_sec_mem_err *mem_err)
296 (long long)mem_err->validation_bits);
299 if (mem_err->validation_bits & CPER_MEM_VALID_ERROR_TYPE) {
301 switch (mem_err->error_type) {
352 mem_err->error_type);
359 if (mem_err->validation_bits & CPER_MEM_VALID_PA) {
360 e->page_frame_number = PHYS_PFN(mem_err->physical_addr);
361 e->offset_in_page = offset_in_page(mem_err->physical_addr);
365 if (mem_err->validation_bits & CPER_MEM_VALID_PA_MASK)
366 e->grain = ~mem_err->physical_addr_mask + 1;
370 if (mem_err->validation_bits & CPER_MEM_VALID_NODE)
371 p += sprintf(p, "node:%d ", mem_err->node);
372 if (mem_err->validation_bits & CPER_MEM_VALID_CARD)
373 p += sprintf(p, "card:%d ", mem_err->card);
374 if (mem_err->validation_bits & CPER_MEM_VALID_MODULE)
375 p += sprintf(p, "module:%d ", mem_err->module);
376 if (mem_err->validation_bits & CPER_MEM_VALID_RANK_NUMBER)
377 p += sprintf(p, "rank:%d ", mem_err->rank);
378 if (mem_err->validation_bits & CPER_MEM_VALID_BANK)
379 p += sprintf(p, "bank:%d ", mem_err->bank);
380 if (mem_err->validation_bits & CPER_MEM_VALID_BANK_GROUP)
382 mem_err->bank >> CPER_MEM_BANK_GROUP_SHIFT);
383 if (mem_err->validation_bits & CPER_MEM_VALID_BANK_ADDRESS)
385 mem_err->bank & CPER_MEM_BANK_ADDRESS_MASK);
386 if (mem_err->validation_bits & (CPER_MEM_VALID_ROW | CPER_MEM_VALID_ROW_EXT)) {
387 u32 row = mem_err->row;
389 row |= cper_get_mem_extension(mem_err->validation_bits, mem_err->extended);
392 if (mem_err->validation_bits & CPER_MEM_VALID_COLUMN)
393 p += sprintf(p, "col:%d ", mem_err->column);
394 if (mem_err->validation_bits & CPER_MEM_VALID_BIT_POSITION)
395 p += sprintf(p, "bit_pos:%d ", mem_err->bit_pos);
396 if (mem_err->validation_bits & CPER_MEM_VALID_MODULE_HANDLE) {
400 dmi_memdev_name(mem_err->mem_dev_handle, &bank, &device);
405 mem_err->mem_dev_handle);
407 dimm = find_dimm_by_handle(mci, mem_err->mem_dev_handle);
413 if (mem_err->validation_bits & CPER_MEM_VALID_CHIP_ID)
415 mem_err->extended >> CPER_MEM_CHIP_ID_SHIFT);
426 if (mem_err->validation_bits & CPER_MEM_VALID_ERROR_STATUS) {
427 u64 status = mem_err->error_status;
487 if (mem_err->validation_bits & CPER_MEM_VALID_REQUESTOR_ID)
489 (long long)mem_err->requestor_id);
490 if (mem_err->validation_bits & CPER_MEM_VALID_RESPONDER_ID)
492 (long long)mem_err->responder_id);
493 if (mem_err->validation_bits & CPER_MEM_VALID_TARGET_ID)
495 (long long)mem_err->responder_id);