On Wed, Dec 17, 2014 at 10:57 AM, Dave Jones <da...@redhat.com> wrote: > On Wed, Dec 17, 2014 at 01:22:41PM -0500, Dave Jones wrote: > > > I'm going to try your two patches on top of .18, with the same kernel > > config, and see where that takes us. > > Hopefully to happier places. > > Not so much. Died very quickly.
Damn, damn, damn. That's because of a stupid typo on the patches. We have these very similar variables ("flags" and "fault") that have very similar fault information, but they are completely different. The "fault & FAULT_FLAG_USER" test is wrong, it should test "flags & FAULT_FLAG_USER". Patch attached. The half-way good news is that this certainly confirms that trinity is triggering the "page fault with fatal signal pending" special case. Linus
arch/x86/mm/fault.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c index b74a7e130b03..38dcec403b46 100644 --- a/arch/x86/mm/fault.c +++ b/arch/x86/mm/fault.c @@ -1247,7 +1247,7 @@ good_area: } /* User mode? Just return to handle the fatal exception */ - if (fault & FAULT_FLAG_USER) + if (flags & FAULT_FLAG_USER) return; /* Not returning to user mode? Handle exceptions or die: */