Messages in this thread | | | Subject | Re: [PATCH 3/5] mce-inject: make injected mce valid only during faked handler call | From | Huang Ying <> | Date | Mon, 28 Sep 2009 15:27:03 +0800 |
| |
On Mon, 2009-09-28 at 14:52 +0800, Hidetoshi Seto wrote: > In the current implementation, injected MCE is valid from the point > the MCE is injected to the point the MCE is processed by the faked > handler call. > > This has an undesired side-effect: it is possible for it to be > consumed by real machine_check_poll. This may confuse a real system > error and may confuse the mce test suite. > > To fix this, this patch changes mce_rdmsrl/wemsrl() to refer injected > data only when injectm.valid states 3rd state "2", which indicates that > the injected MCE entry is valid and ready for the handler. > > The injectm.valid becomes "2" only during faked MCE handler call > and protected by IRQ disabling. This make it impossible for real > machine_check_poll to consume it.
Anyway, I don't think it is a good idea to use a magic number like "2" here. A meaningful name is better.
And I think my original method is clearer. Because injection related flags go inject_flags, not be mixed with normal path flag "finished".
Best Regards, Huang Ying
| |