lkml.org 
[lkml]   [2009]   [Oct]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 6/6] mce-inject: use injected mce only during faked handler call
From
Date
On Fri, 2009-10-09 at 16:31 +0800, Hidetoshi Seto wrote: 
> Huang Ying wrote:
> > On Fri, 2009-10-09 at 15:27 +0800, Hidetoshi Seto wrote:
> >> Huang Ying wrote:
> >>> This is another example for you to use my idea, implement it in a
> >>> similar way and send it out as your own.
> >> I used "Reported-by:" for this patch, having some intent to indicate
> >> that this patch uses an idea different from the original one, and that
> >> this patch aims at the problem certainly reported by you.
> >
> > The point of the idea is to use two flags instead of one flag, not the
> > name of the flag or they are inside/outside of struct mce.
>
> Humm, I could be wrong and could misread your comment...
>
> The point of my idea is to use two separated flags, "inject_flags" for
> inject tool and "valid" for kernel, instead of one flag as you proposed,
> "inject_flags" shared by both.
> And I think the flag for kernel should be outside of struct mce.
>
> Once I complained about the name of flag ".finished", because you were
> trying to add "LOADED" flag. I thought that "if .finished but !LOADED, it
> means the loading data to struct is finished but not loaded.. ???what???"

We have full control on these flags. In my original patch, I
set .finished = 0, before set MCJ_LOADED in .inject_flags. And I will
not set .finished = 1, before set MCJ_LOADED in inject_flags.

> So at first I tried to add 3rd state to ".finished", but soon I agreed
> that it is not good idea.
>
> After that I started to think about having two separated flags, and the
> result is this [6/6] patch in -v2.
>
> In short, I believe that my idea is "use two flags" and your idea is
> "share one flag" ... right?

No. There are many flags in .inject_flags (MCJ_EXCEPTION, MCJ_LOADED,
etc), .finished is just another flag.

The issue of original version is that .finished is used to indicate both
there is some data in injectm and injectm can be consumed. What I do is
to use two flags, .finished is used to indicate injectm can be consumed,
MCJ_LOADED is used to indicate there is some data in injectm. You just
change the name and the place of the two flags. In [6/6], you
use .finished to indicate there is some data in injectm and use
mce_fake_banks.valid to indicate injectm can be consumed.

It is OK to discuss the name and places of the two flags, but you should
not send out a similar patch and declare it is your idea.

> The only thing what I want to do here is merge your "fix" into upstream.

You should provide comment, instead of sending out a similar patch and
declaring it is your idea.

Best Regards,
Huang Ying




\
 
 \ /
  Last update: 2009-10-09 11:23    [from the cache]
©2003-2011 Jasper Spaans