Re: [GIT PULL] please pull one bug fix for v4.4

From: Jeff Merkey
Date: Mon Jan 11 2016 - 16:27:33 EST


On 1/11/16, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> The merge window is open, so I started looking at this that I had
> ignored as being too late last time..
>
> On Sun, Dec 13, 2015 at 7:02 PM, Jeff Merkey <linux.mdb@xxxxxxxxx> wrote:
>> Patch address with email included:
>>
>> https://github.com/jeffmerkey/linux/commit/e1d3c76814c839a835286843f0bca33b0c5d0dd8.patch
>
> So at a minimum, I'd like a sign-off for the patch. But also, can you
> describe how to actually trigger the problem? Is this actually
> triggerable without an ICE?
>
> Linus
>

Hi Linus,

It is triggerable without an ice, any module can call set_debugreg dr7
and trigger it, and some do, and I suspect a lot of cases where folks
see hard hangs are related to this issue if some program happens to
stuff bogus data into dr6 -- most folks just don't know this is what
causes it.

That being said, it seems to require an ICE of some sort fiddling
with the debug registers to cause it, though there are places in the
code I based on what I reviewed where someone running GDB from
userspace could trigger it because thread.debugreg6 gets whacked.
Not all of the code paths clear the trap flag in debugreg6 after a
trap occurs and this bit seems to get recycled.

I will send you an updated pull location properly signed off.

Jeff