/linux-6.3-rc2/arch/powerpc/kernel/ |
A D | mce.c | 97 struct machine_check_event *mce; in save_mce_event() local 109 mce->version = MCE_V1; in save_mce_event() 110 mce->srr0 = nip; in save_mce_event() 111 mce->srr1 = regs->msr; in save_mce_event() 112 mce->gpr3 = regs->gpr[3]; in save_mce_event() 113 mce->in_use = 1; in save_mce_event() 114 mce->cpu = get_paca()->paca_index; in save_mce_event() 130 mce_set_error_info(mce, mce_err); in save_mce_event() 168 machine_check_ue_event(mce); in save_mce_event() 205 if (mce) in get_mce_event() [all …]
|
/linux-6.3-rc2/arch/x86/kernel/cpu/mce/ |
A D | genpool.c | 35 struct mce *m1, *m2; in is_duplicate_mce_record() 37 m1 = &t->mce; in is_duplicate_mce_record() 40 m2 = &node->mce; in is_duplicate_mce_record() 78 struct mce *mce; in mce_gen_pool_process() local 86 mce = &node->mce; in mce_gen_pool_process() 87 blocking_notifier_call_chain(&x86_mce_decoder_chain, 0, mce); in mce_gen_pool_process() 97 int mce_gen_pool_add(struct mce *mce) in mce_gen_pool_add() argument 101 if (filter_mce(mce)) in mce_gen_pool_add() 113 memcpy(&node->mce, mce, sizeof(*mce)); in mce_gen_pool_add()
|
A D | internal.h | 29 struct mce mce; member 34 int mce_gen_pool_add(struct mce *mce); 51 bool intel_filter_mce(struct mce *m); 66 int apei_write_mce(struct mce *m); 67 ssize_t apei_read_mce(struct mce *m, u64 *record_id); 71 static inline int apei_write_mce(struct mce *m) in apei_write_mce() 75 static inline ssize_t apei_read_mce(struct mce *m, u64 *record_id) in apei_read_mce() 95 static inline bool mce_cmp(struct mce *m1, struct mce *m2) in mce_cmp() 206 extern bool filter_mce(struct mce *m); 209 extern bool amd_filter_mce(struct mce *m); [all …]
|
A D | dev-mcelog.c | 39 struct mce *mce = (struct mce *)data; in dev_mce_log() local 42 if (mce->kflags & MCE_HANDLED_CEC) in dev_mce_log() 60 memcpy(mcelog->entry + entry, mce, sizeof(struct mce)); in dev_mce_log() 71 mce->kflags |= MCE_HANDLED_MCELOG; in dev_mce_log() 166 struct mce m; in __mce_read_apei() 168 if (usize < sizeof(struct mce)) in __mce_read_apei() 197 *ubuf += sizeof(struct mce); in __mce_read_apei() 226 struct mce *m = &mcelog->entry[i]; in mce_chrdev_read() 296 struct mce m; in mce_chrdev_write() 308 usize = sizeof(struct mce); in mce_chrdev_write() [all …]
|
A D | inject.c | 41 static struct mce i_mce; 69 struct mce *m = (struct mce *)data; \ 83 struct mce *m = (struct mce *)data; \ 103 struct mce *m = (struct mce *)data; in inj_ipid_set() 117 memset(m, 0, sizeof(struct mce)); in setup_inj_struct() 126 static void inject_mce(struct mce *m) in inject_mce() 138 memcpy(i, m, sizeof(struct mce)); in inject_mce() 298 struct mce *m = (struct mce *)data; in mce_inject_raise() 405 struct mce *m = (struct mce *)data; in inj_extcpu_set() 479 struct mce m = *(struct mce *)info; in prepare_msrs() [all …]
|
A D | apei.c | 31 struct mce m; in apei_mce_report_mem_error() 70 struct mce m; in apei_smca_report_x86_error() 141 struct mce mce; member 144 int apei_write_mce(struct mce *m) in apei_write_mce() 162 rcd.sec_hdr.section_offset = (void *)&rcd.mce - (void *)&rcd; in apei_write_mce() 163 rcd.sec_hdr.section_length = sizeof(rcd.mce); in apei_write_mce() 171 memcpy(&rcd.mce, m, sizeof(*m)); in apei_write_mce() 176 ssize_t apei_read_mce(struct mce *m, u64 *record_id) in apei_read_mce() 199 memcpy(m, &rcd.mce, sizeof(*m)); in apei_read_mce()
|
A D | core.c | 136 void mce_log(struct mce *m) in mce_log() 261 struct mce *m = &l->mce; in mce_panic() 270 struct mce *m = &l->mce; in mce_panic() 543 struct mce *m = (struct mce *)data; in mce_early_notifier() 566 struct mce *mce = (struct mce *)data; in uc_decode_notifier() local 569 if (!mce || !mce_usable_address(mce)) in uc_decode_notifier() 593 struct mce *m = (struct mce *)data; in mce_default_notifier() 662 struct mce m; in machine_check_poll() 958 struct mce *m = NULL; in mce_reign() 1209 __mc_scan_banks(struct mce *m, struct pt_regs *regs, struct mce *final, in __mc_scan_banks() [all …]
|
A D | Makefile | 9 mce-inject-y := inject.o 10 obj-$(CONFIG_X86_MCE_INJECT) += mce-inject.o
|
/linux-6.3-rc2/drivers/acpi/nfit/ |
A D | mce.c | 16 struct mce *mce = (struct mce *)data; in nfit_handle_mce() local 21 if (!mce_is_memory_error(mce) || mce_is_correctable(mce)) in nfit_handle_mce() 25 if (!mce_usable_address(mce)) in nfit_handle_mce() 35 unsigned int align = 1UL << MCI_MISC_ADDR_LSB(mce->misc); in nfit_handle_mce() 46 if (spa->address > mce->addr) in nfit_handle_mce() 48 if ((spa->address + spa->length - 1) < mce->addr) in nfit_handle_mce() 67 ALIGN_DOWN(mce->addr, align), align); in nfit_handle_mce() 79 mce->kflags |= MCE_HANDLED_NFIT; in nfit_handle_mce()
|
/linux-6.3-rc2/drivers/edac/ |
A D | skx_common.c | 534 const struct mce *m, in skx_mce_output_error() 636 struct mce *mce = (struct mce *)data; in skx_mce_check_error() local 641 if (mce->kflags & MCE_HANDLED_CEC) in skx_mce_check_error() 645 if (!skx_error_in_mem(mce) || !(mce->status & MCI_STATUS_ADDRV)) in skx_mce_check_error() 649 res.mce = mce; in skx_mce_check_error() 664 if (mce->mcgstatus & MCG_STATUS_MCIP) in skx_mce_check_error() 673 mce->mcgstatus, mce->bank, mce->status); in skx_mce_check_error() 679 "%u APIC 0x%x\n", mce->cpuvendor, mce->cpuid, in skx_mce_check_error() 680 mce->time, mce->socketid, mce->apicid); in skx_mce_check_error() 682 skx_mce_output_error(mci, mce, &res); in skx_mce_check_error() [all …]
|
A D | mce_amd.c | 13 static void (*decode_dram_ecc)(int node_id, struct mce *m); 15 void amd_register_ecc_decoder(void (*f)(int, struct mce *)) in amd_register_ecc_decoder() argument 764 static void decode_mc0_mce(struct mce *m) in decode_mc0_mce() 874 static void decode_mc1_mce(struct mce *m) in decode_mc1_mce() 1020 static void decode_mc2_mce(struct mce *m) in decode_mc2_mce() 1031 static void decode_mc3_mce(struct mce *m) in decode_mc3_mce() 1060 static void decode_mc4_mce(struct mce *m) in decode_mc4_mce() 1118 static void decode_mc5_mce(struct mce *m) in decode_mc5_mce() 1150 static void decode_mc6_mce(struct mce *m) in decode_mc6_mce() 1167 static void decode_smca_error(struct mce *m) in decode_smca_error() [all …]
|
A D | igen6_edac.c | 738 struct mce *mce = (struct mce *)data; in ecclog_mce_handler() local 741 if (mce->kflags & MCE_HANDLED_CEC) in ecclog_mce_handler() 749 if ((mce->status & 0xefff) >> 7 != 1) in ecclog_mce_handler() 752 if (mce->mcgstatus & MCG_STATUS_MCIP) in ecclog_mce_handler() 758 mce->extcpu, type, mce->mcgstatus, in ecclog_mce_handler() 759 mce->bank, mce->status); in ecclog_mce_handler() 760 edac_dbg(0, "TSC 0x%llx\n", mce->tsc); in ecclog_mce_handler() 761 edac_dbg(0, "ADDR 0x%llx\n", mce->addr); in ecclog_mce_handler() 764 mce->cpuvendor, mce->cpuid, mce->time, in ecclog_mce_handler() 765 mce->socketid, mce->apicid); in ecclog_mce_handler() [all …]
|
A D | pnd2_edac.c | 1372 struct mce *mce = (struct mce *)data; in pnd2_mce_check_error() local 1378 if (!mci || (mce->kflags & MCE_HANDLED_CEC)) in pnd2_mce_check_error() 1387 if ((mce->status & 0xefff) >> 7 != 1) in pnd2_mce_check_error() 1390 if (mce->mcgstatus & MCG_STATUS_MCIP) in pnd2_mce_check_error() 1397 mce->extcpu, type, mce->mcgstatus, mce->bank, mce->status); in pnd2_mce_check_error() 1398 pnd2_mc_printk(mci, KERN_INFO, "TSC %llx ", mce->tsc); in pnd2_mce_check_error() 1399 pnd2_mc_printk(mci, KERN_INFO, "ADDR %llx ", mce->addr); in pnd2_mce_check_error() 1402 mce->cpuvendor, mce->cpuid, mce->time, mce->socketid, mce->apicid); in pnd2_mce_check_error() 1404 pnd2_mce_output_error(mci, mce, &daddr); in pnd2_mce_check_error() 1407 mce->kflags |= MCE_HANDLED_EDAC; in pnd2_mce_check_error() [all …]
|
A D | mce_amd.h | 79 void amd_register_ecc_decoder(void (*f)(int, struct mce *)); 80 void amd_unregister_ecc_decoder(void (*f)(int, struct mce *));
|
A D | sb_edac.c | 2369 const struct mce *m, u8 *socket, in get_memory_error_data_from_mce() 3077 const struct mce *m) in sbridge_mce_output_error() 3258 struct mce *mce = (struct mce *)data; in sbridge_mce_check_error() local 3262 if (mce->kflags & MCE_HANDLED_CEC) in sbridge_mce_check_error() 3271 if ((mce->status & 0xefff) >> 7 != 1) in sbridge_mce_check_error() 3290 if (mce->mcgstatus & MCG_STATUS_MCIP) in sbridge_mce_check_error() 3299 mce->mcgstatus, mce->bank, mce->status); in sbridge_mce_check_error() 3305 "%u APIC %x\n", mce->cpuvendor, mce->cpuid, in sbridge_mce_check_error() 3306 mce->time, mce->socketid, mce->apicid); in sbridge_mce_check_error() 3308 sbridge_mce_output_error(mci, mce); in sbridge_mce_check_error() [all …]
|
/linux-6.3-rc2/Documentation/translations/zh_CN/mm/ |
A D | hwpoison.rst | 143 x86 有 mce-inject, mce-test 145 在mce-test中的一些便携式hwpoison测试程序,见下文。 150 http://halobates.de/mce-lc09-2.pdf 153 git://git.kernel.org/pub/scm/utils/cpu/mce/mce-test.git 156 git://git.kernel.org/pub/scm/utils/cpu/mce/mce-inject.git
|
/linux-6.3-rc2/arch/x86/include/asm/ |
A D | mce.h | 172 struct mce entry[]; 222 void mce_setup(struct mce *m); 223 void mce_log(struct mce *m); 246 bool mce_is_memory_error(struct mce *m); 247 bool mce_is_correctable(struct mce *m); 248 int mce_usable_address(struct mce *m); 266 DECLARE_PER_CPU(struct mce, injectm); 337 extern bool amd_mce_is_memory_error(struct mce *m); 348 static inline bool amd_mce_is_memory_error(struct mce *m) { return false; }; in amd_mce_is_memory_error()
|
/linux-6.3-rc2/drivers/acpi/ |
A D | acpi_extlog.c | 137 struct mce *mce = (struct mce *)data; in extlog_print() local 138 int bank = mce->bank; in extlog_print() 139 int cpu = mce->extcpu; in extlog_print() 148 if (estatus == NULL || (mce->kflags & MCE_HANDLED_CEC)) in extlog_print() 184 mce->kflags |= MCE_HANDLED_EXTLOG; in extlog_print()
|
/linux-6.3-rc2/tools/testing/selftests/kvm/x86_64/ |
A D | ucna_injection_test.c | 164 struct kvm_x86_mce mce = {}; in inject_ucna() local 165 mce.status = status; in inject_ucna() 166 mce.mcg_status = 0; in inject_ucna() 172 mce.misc = (MCM_ADDR_PHYS << 6) | 0xc; in inject_ucna() 173 mce.addr = addr; in inject_ucna() 174 mce.bank = UCNA_BANK; in inject_ucna() 176 vcpu_ioctl(vcpu, KVM_X86_SET_MCE, &mce); in inject_ucna()
|
/linux-6.3-rc2/Documentation/mm/ |
A D | hwpoison.rst | 159 x86 has mce-inject, mce-test 161 Some portable hwpoison test programs in mce-test, see below. 166 http://halobates.de/mce-lc09-2.pdf 169 git://git.kernel.org/pub/scm/utils/cpu/mce/mce-test.git 172 git://git.kernel.org/pub/scm/utils/cpu/mce/mce-inject.git
|
/linux-6.3-rc2/Documentation/x86/x86_64/ |
A D | boot-options.rst | 14 mce=off 16 mce=no_cmci 24 mce=dont_log_ce 29 mce=ignore_ce 38 mce=no_lmce 41 mce=bootlog 48 mce=nobootlog 50 mce=monarchtimeout (number) 54 mce=bios_cmci_threshold 61 mce=recovery [all …]
|
A D | machinecheck.rst | 25 Documentation/ABI/testing/sysfs-mce for more details. 33 see http://one.firstfloor.org/~andi/mce.pdf
|
/linux-6.3-rc2/Documentation/devicetree/bindings/media/ |
A D | rc.yaml | 60 - rc-dvico-mce 71 - rc-fusionhdtv-mce 79 - rc-imon-mce 123 - rc-rc6-mce
|
/linux-6.3-rc2/drivers/media/rc/keymaps/ |
A D | Makefile | 42 rc-dvico-mce.o \ 52 rc-fusionhdtv-mce.o \ 60 rc-imon-mce.o \ 103 rc-rc6-mce.o \
|
/linux-6.3-rc2/include/trace/events/ |
A D | mce.h | 3 #define TRACE_SYSTEM mce 14 TP_PROTO(struct mce *m),
|