![](https://seccdn.libravatar.org/avatar/fb47627bc8c0bcdb36321edfbf02e916.jpg?s=120&d=mm&r=g)
On Tue, Jan 27, 2015 at 11:32 AM, Takashi Iwai <tiwai@suse.de> wrote:
the commit [320b2b8de126: mm: keep a guard page below a grow-down stack segment] seems resulting in a regression with libsigsegv.
This is a case giving us a dilemma. Of course, we can "fix" libsigsegv to handle SIGBUS gracefully. OTOH, this can be seen as a user-space regression we'd like to avoid usually.
Yeah, no, that's obviously a kernel regression and needs to be fixed, even if no sane program should care about SIGSEGV vs SIGBUS. But "sane program" is irrelevant for the regression rule - somebody noticed. The only reason it returns SIGBUS is that we don't have an equivalent VM_FAULT_SIGSEGV error return. Which is something of an oversight, but adding it is a pain too, simply because the callers are mainly the architecture page fault handlers, so the VM_FAULT_SIGSEGV handling has to be added to all of them. Very annoying. The patch would look something like the attached - TOTALLY UNTESTED. Does this fix things for you? Linus