Re: [PATCH 3/5] mce-inject: make injected mce valid only duringfaked handler call

From: Huang Ying
Date: Mon Sep 28 2009 - 03:27:11 EST


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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/