Home
last modified time | relevance | path

Searched refs:mce (Results 1 – 25 of 55) sorted by relevance

123

/Linux-v5.4/arch/powerpc/kernel/
Dmce.c50 static void mce_set_error_info(struct machine_check_event *mce, in mce_set_error_info() argument
53 mce->error_type = mce_err->error_type; in mce_set_error_info()
56 mce->u.ue_error.ue_error_type = mce_err->u.ue_error_type; in mce_set_error_info()
59 mce->u.slb_error.slb_error_type = mce_err->u.slb_error_type; in mce_set_error_info()
62 mce->u.erat_error.erat_error_type = mce_err->u.erat_error_type; in mce_set_error_info()
65 mce->u.tlb_error.tlb_error_type = mce_err->u.tlb_error_type; in mce_set_error_info()
68 mce->u.user_error.user_error_type = mce_err->u.user_error_type; in mce_set_error_info()
71 mce->u.ra_error.ra_error_type = mce_err->u.ra_error_type; in mce_set_error_info()
74 mce->u.link_error.link_error_type = mce_err->u.link_error_type; in mce_set_error_info()
91 struct machine_check_event *mce = this_cpu_ptr(&mce_event[index]); in save_mce_event() local
[all …]
/Linux-v5.4/arch/x86/kernel/cpu/mce/
Dgenpool.c35 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()
Dinternal.h29 struct mce mce; member
34 int mce_gen_pool_add(struct mce *mce);
38 extern int (*mce_severity)(struct mce *a, int tolerant, char **msg, bool is_excp);
58 int apei_write_mce(struct mce *m);
59 ssize_t apei_read_mce(struct mce *m, u64 *record_id);
63 static inline int apei_write_mce(struct mce *m) in apei_write_mce()
67 static inline ssize_t apei_read_mce(struct mce *m, u64 *record_id) in apei_read_mce()
81 void mce_inject_log(struct mce *m);
89 static inline bool mce_cmp(struct mce *m1, struct mce *m2) in mce_cmp()
167 extern bool filter_mce(struct mce *m);
[all …]
Ddev-mcelog.c35 .recordlen = sizeof(struct mce),
43 struct mce *mce = (struct mce *)data; in dev_mce_log() local
61 memcpy(mcelog.entry + entry, mce, sizeof(struct mce)); in dev_mce_log()
164 struct mce m; in __mce_read_apei()
166 if (usize < sizeof(struct mce)) in __mce_read_apei()
182 if (copy_to_user(*ubuf, &m, sizeof(struct mce))) in __mce_read_apei()
195 *ubuf += sizeof(struct mce); in __mce_read_apei()
217 if (*off != 0 || usize < MCE_LOG_LEN*sizeof(struct mce)) in mce_chrdev_read()
224 struct mce *m = &mcelog.entry[i]; in mce_chrdev_read()
230 memset(mcelog.entry, 0, next * sizeof(struct mce)); in mce_chrdev_read()
[all …]
Dinject.c39 static struct mce i_mce;
67 struct mce *m = (struct mce *)data; \
81 struct mce *m = (struct mce *)data; \
97 static void setup_inj_struct(struct mce *m) in setup_inj_struct()
99 memset(m, 0, sizeof(struct mce)); in setup_inj_struct()
108 static void inject_mce(struct mce *m) in inject_mce()
110 struct mce *i = &per_cpu(injectm, m->extcpu); in inject_mce()
120 memcpy(i, m, sizeof(struct mce)); in inject_mce()
126 static void raise_poll(struct mce *m) in raise_poll()
138 static void raise_exception(struct mce *m, struct pt_regs *pregs) in raise_exception()
[all …]
Dapei.c31 struct mce m; in apei_mce_report_mem_error()
68 struct mce mce; member
71 int apei_write_mce(struct mce *m) in apei_write_mce()
89 rcd.sec_hdr.section_offset = (void *)&rcd.mce - (void *)&rcd; in apei_write_mce()
90 rcd.sec_hdr.section_length = sizeof(rcd.mce); in apei_write_mce()
98 memcpy(&rcd.mce, m, sizeof(*m)); in apei_write_mce()
103 ssize_t apei_read_mce(struct mce *m, u64 *record_id) in apei_read_mce()
128 memcpy(m, &rcd.mce, sizeof(*m)); in apei_read_mce()
Dcore.c100 static DEFINE_PER_CPU(struct mce, mces_seen);
124 static void (*quirk_no_way_out)(int bank, struct mce *m, struct pt_regs *regs);
133 void mce_setup(struct mce *m) in mce_setup()
135 memset(m, 0, sizeof(struct mce)); in mce_setup()
151 DEFINE_PER_CPU(struct mce, injectm);
154 void mce_log(struct mce *m) in mce_log()
160 void mce_inject_log(struct mce *m) in mce_inject_log()
244 static void __print_mce(struct mce *m) in __print_mce()
284 static void print_mce(struct mce *m) in print_mce()
313 static void mce_panic(const char *msg, struct mce *final, char *exp) in mce_panic()
[all …]
DMakefile9 mce-inject-y := inject.o
10 obj-$(CONFIG_X86_MCE_INJECT) += mce-inject.o
Dseverity.c212 static int error_context(struct mce *m) in error_context()
221 static int mce_severity_amd_smca(struct mce *m, enum context err_ctx) in mce_severity_amd_smca()
252 static int mce_severity_amd(struct mce *m, int tolerant, char **msg, bool is_excp) in mce_severity_amd()
304 static int mce_severity_intel(struct mce *m, int tolerant, char **msg, bool is_excp) in mce_severity_intel()
335 int (*mce_severity)(struct mce *m, int tolerant, char **msg, bool is_excp) =
/Linux-v5.4/drivers/acpi/nfit/
Dmce.c16 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()
45 if (spa->address > mce->addr) in nfit_handle_mce()
47 if ((spa->address + spa->length - 1) < mce->addr) in nfit_handle_mce()
66 ALIGN(mce->addr, L1_CACHE_BYTES), in nfit_handle_mce()
DMakefile5 nfit-$(CONFIG_X86_MCE) += mce.o
/Linux-v5.4/drivers/edac/
Dskx_common.c474 const struct mce *m, in skx_mce_output_error()
568 struct mce *mce = (struct mce *)data; in skx_mce_check_error() local
577 if ((mce->status & 0xefff) >> 7 != 1 || !(mce->status & MCI_STATUS_ADDRV)) in skx_mce_check_error()
581 res.addr = mce->addr; in skx_mce_check_error()
598 if (mce->mcgstatus & MCG_STATUS_MCIP) in skx_mce_check_error()
606 "Bank %d: 0x%llx\n", mce->extcpu, type, in skx_mce_check_error()
607 mce->mcgstatus, mce->bank, mce->status); in skx_mce_check_error()
608 skx_mc_printk(mci, KERN_DEBUG, "TSC 0x%llx ", mce->tsc); in skx_mce_check_error()
609 skx_mc_printk(mci, KERN_DEBUG, "ADDR 0x%llx ", mce->addr); in skx_mce_check_error()
610 skx_mc_printk(mci, KERN_DEBUG, "MISC 0x%llx ", mce->misc); in skx_mce_check_error()
[all …]
Dmce_amd.c14 static void (*decode_dram_ecc)(int node_id, struct mce *m);
22 void amd_register_ecc_decoder(void (*f)(int, struct mce *)) in amd_register_ecc_decoder() argument
28 void amd_unregister_ecc_decoder(void (*f)(int, struct mce *)) in amd_unregister_ecc_decoder() argument
543 static void decode_mc0_mce(struct mce *m) in decode_mc0_mce()
653 static void decode_mc1_mce(struct mce *m) in decode_mc1_mce()
799 static void decode_mc2_mce(struct mce *m) in decode_mc2_mce()
810 static void decode_mc3_mce(struct mce *m) in decode_mc3_mce()
839 static void decode_mc4_mce(struct mce *m) in decode_mc4_mce()
897 static void decode_mc5_mce(struct mce *m) in decode_mc5_mce()
929 static void decode_mc6_mce(struct mce *m) in decode_mc6_mce()
[all …]
Dpnd2_edac.c1143 static void pnd2_mce_output_error(struct mem_ctl_info *mci, const struct mce *m, in pnd2_mce_output_error()
1394 struct mce *mce = (struct mce *)data; in pnd2_mce_check_error() local
1412 if ((mce->status & 0xefff) >> 7 != 1) in pnd2_mce_check_error()
1415 if (mce->mcgstatus & MCG_STATUS_MCIP) in pnd2_mce_check_error()
1422 mce->extcpu, type, mce->mcgstatus, mce->bank, mce->status); in pnd2_mce_check_error()
1423 pnd2_mc_printk(mci, KERN_INFO, "TSC %llx ", mce->tsc); in pnd2_mce_check_error()
1424 pnd2_mc_printk(mci, KERN_INFO, "ADDR %llx ", mce->addr); in pnd2_mce_check_error()
1425 pnd2_mc_printk(mci, KERN_INFO, "MISC %llx ", mce->misc); in pnd2_mce_check_error()
1427 mce->cpuvendor, mce->cpuid, mce->time, mce->socketid, mce->apicid); in pnd2_mce_check_error()
1429 pnd2_mce_output_error(mci, mce, &daddr); in pnd2_mce_check_error()
[all …]
Dmce_amd.h81 void amd_register_ecc_decoder(void (*f)(int, struct mce *));
82 void amd_unregister_ecc_decoder(void (*f)(int, struct mce *));
Dsb_edac.c2242 const struct mce *m, u8 *socket, in get_memory_error_data_from_mce()
2950 const struct mce *m) in sbridge_mce_output_error()
3135 struct mce *mce = (struct mce *)data; in sbridge_mce_check_error() local
3148 if ((mce->status & 0xefff) >> 7 != 1) in sbridge_mce_check_error()
3152 if (!GET_BITFIELD(mce->status, 58, 58)) in sbridge_mce_check_error()
3156 if (!GET_BITFIELD(mce->status, 59, 59)) in sbridge_mce_check_error()
3160 if (GET_BITFIELD(mce->misc, 6, 8) != 2) in sbridge_mce_check_error()
3163 mci = get_mci_for_node_id(mce->socketid, IMC0); in sbridge_mce_check_error()
3167 if (mce->mcgstatus & MCG_STATUS_MCIP) in sbridge_mce_check_error()
3175 "Bank %d: %016Lx\n", mce->extcpu, type, in sbridge_mce_check_error()
[all …]
/Linux-v5.4/arch/x86/include/asm/
Dmce.h142 struct mce entry[MCE_LOG_LEN];
186 void mce_setup(struct mce *m);
187 void mce_log(struct mce *m);
214 bool mce_is_memory_error(struct mce *m);
215 bool mce_is_correctable(struct mce *m);
216 int mce_usable_address(struct mce *m);
233 DECLARE_PER_CPU(struct mce, injectm);
333 extern bool amd_mce_is_memory_error(struct mce *m);
345 static inline bool amd_mce_is_memory_error(struct mce *m) { return false; }; in amd_mce_is_memory_error()
/Linux-v5.4/drivers/acpi/
Dacpi_extlog.c138 struct mce *mce = (struct mce *)data; in extlog_print() local
139 int bank = mce->bank; in extlog_print()
140 int cpu = mce->extcpu; in extlog_print()
/Linux-v5.4/Documentation/vm/
Dhwpoison.rst162 x86 has mce-inject, mce-test
164 Some portable hwpoison test programs in mce-test, see below.
169 http://halobates.de/mce-lc09-2.pdf
172 git://git.kernel.org/pub/scm/utils/cpu/mce/mce-test.git
175 git://git.kernel.org/pub/scm/utils/cpu/mce/mce-inject.git
/Linux-v5.4/Documentation/x86/x86_64/
Dboot-options.rst14 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=tolerancelevel[,monarchtimeout] (number,number)
61 mce=bios_cmci_threshold
68 mce=recovery
[all …]
/Linux-v5.4/drivers/media/rc/keymaps/
DMakefile37 rc-dvico-mce.o \
47 rc-fusionhdtv-mce.o \
54 rc-imon-mce.o \
93 rc-rc6-mce.o \
/Linux-v5.4/drivers/net/ethernet/marvell/octeontx2/af/
Drvu_nix.c65 struct mce { struct
580 memcpy(ctx, &req->mce, sizeof(struct nix_rx_mce_s)); in rvu_nix_aq_enq_inst()
657 memcpy(&rsp->mce, ctx, in rvu_nix_aq_enq_inst()
1622 static int nix_setup_mce(struct rvu *rvu, int mce, u8 op, in nix_setup_mce() argument
1631 aq_req.qidx = mce; in nix_setup_mce()
1634 aq_req.mce.op = 0; in nix_setup_mce()
1635 aq_req.mce.index = 0; in nix_setup_mce()
1636 aq_req.mce.eol = eol; in nix_setup_mce()
1637 aq_req.mce.pf_func = pcifunc; in nix_setup_mce()
1638 aq_req.mce.next = next; in nix_setup_mce()
[all …]
/Linux-v5.4/drivers/staging/media/tegra-vde/
Dvde.h32 void __iomem *mce; member
89 if (vde->mce == base) in tegra_vde_reg_base_name()
/Linux-v5.4/include/trace/events/
Dmce.h3 #define TRACE_SYSTEM mce
14 TP_PROTO(struct mce *m),
/Linux-v5.4/drivers/infiniband/sw/rxe/
Drxe_recv.c281 struct rxe_mc_elem *mce; in rxe_rcv_mcast_pkt() local
299 list_for_each_entry(mce, &mcg->qp_list, qp_list) { in rxe_rcv_mcast_pkt()
300 qp = mce->qp; in rxe_rcv_mcast_pkt()
315 if (mce->qp_list.next != &mcg->qp_list) in rxe_rcv_mcast_pkt()

123