On 2/22/24 7:13 PM, Davidlohr Bueso wrote: > On Wed, 21 Feb 2024, Ben Cheatham wrote: > >> So the way the EINJ module currently works (at least as I understand it) >> is that any address supplied for memory errors is checked to make sure it's >> a "normal" memory address. Looking at the comment above the memory checks: >> >> /* >> * Disallow crazy address masks that give BIOS leeway to pick >> * injection address almost anywhere. Insist on page or >> * better granularity and that target address is normal RAM or >> * NVDIMM. >> */ >> >> it seems that's the case. What this means is that we can't supply the >> RCRB of a CXL 1.0/1.1 port because it's an MMIO address and we have to disable >> the checks to inject a CXL 1.0/1.1 error. > > Maybe worth a comment here as to why the error checking is skipped for cxl? > > + } else if ((type & CXL_ERROR_MASK) && (flags & SETWA_FLAGS_MEM)) { > + goto inject; > I think that's a good idea, I'll go ahead and add one in. Thanks, Ben > Thanks, > Davidlohr