On Fri, 30 May 2014 02:51:08 -0400 Naoya Horiguchi <[email protected]> wrote:
> From: Tony Luck <[email protected]> > > When a thread in a multi-threaded application hits a machine > check because of an uncorrectable error in memory - we want to > send the SIGBUS with si.si_code = BUS_MCEERR_AR to that thread. > Currently we fail to do that if the active thread is not the > primary thread in the process. collect_procs() just finds primary > threads and this test: > if ((flags & MF_ACTION_REQUIRED) && t == current) { > will see that the thread we found isn't the current thread > and so send a si.si_code = BUS_MCEERR_AO to the primary > (and nothing to the active thread at this time). > > We can fix this by checking whether "current" shares the same > mm with the process that collect_procs() said owned the page. > If so, we send the SIGBUS to current (with code BUS_MCEERR_AR). > > Reported-by: Otto Bruggeman <[email protected]> > Signed-off-by: Tony Luck <[email protected]> > Cc: Andi Kleen <[email protected]> > Cc: Borislav Petkov <[email protected]> > Cc: Chen Gong <[email protected]> > Acked-by: Naoya Horiguchi <[email protected]> You were on the patch delivery path, so it should have included your signed-off-by. Documentation/SubmittingPatches section 12 has the details. I have made that change to my copies of patches 1 and 2. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

