On Tue, Apr 07, 2020 at 06:49:03PM -0400, Vivek Goyal wrote:
- Access to bad memory results in #MC. Sure, #MC is a turd, but it’s an *architectural* turd. By all means, have a nice simple PV mechanism to tell the #MC code exactly what went wrong, but keep the overall flow the same as in the native case.
Should we differentiate between two error cases. In this case memory is not bad. Just that page being asked for can't be faulted in anymore. And another error case is real memory failure. So for the first case it could be injected into guest using #PF or #VE or something paravirt specific and real hardware failures take #MC path (if they are not already doing so).
For handling memory failures with guests there's this whole thing described Documentation/vm/hwpoison.rst and KVM has support for that.