[BZ,#18508] S390: Fix "backtrace() returns infinitely deep stack frames with makecontext()".

Message ID mnlb2i$md$2@ger.gmane.org
State Committed
Headers

Commit Message

Stefan Liebler July 9, 2015, 8:23 a.m. UTC
  On 07/08/2015 04:45 PM, Carlos O'Donell wrote:
> On 07/08/2015 10:43 AM, Carlos O'Donell wrote:
>> On 07/08/2015 08:00 AM, Stefan Liebler wrote:
>>> On 07/07/2015 09:02 PM, Carlos O'Donell wrote:
>>>> On 07/07/2015 01:47 PM, H.J. Lu wrote:
>>>>> I opened:
>>>>> https://sourceware.org/bugzilla/show_bug.cgi?id=18635
>>>>
>>>> Stefan,
>>>>
>>>> Please fix this promptly as glibc 2.22 will be released
>>>> shortly and the test results should be clean. If we can't
>>>> fix it promptly, then we should revert the test changes.
>>>>
>>>> Cheers,
>>>> Carlos.
>>>>
>>> Hi,
>>>
>>> the testcase seems to be okay, but there is a bug in i686 backtrace handling if the context was set via makecontext.
>>> If we revert the test changes, the test case will pass, but the bug is only hidden.
>>
>> If that's the case then please file a bug on sourceware for
>> this particular failure, mark the test as XFAIL for i686 and
>> use a comment to reference the bug when you mark it XFAIL.
>
> Bug 18635 was already filed by H.J, so use that.
>
> c.
>
>

This patch marks stdlib/tst-makecontext as XFAIL for i686.
Ok to commit?

Bye
Stefan

---
2015-07-09  Stefan Liebler  <stli@linux.vnet.ibm.com>

	* sysdeps/i386/i686/Makefile (test-xfail-tst-makecontext):
	New variable.
  

Comments

Stefan Liebler July 14, 2015, 6:11 a.m. UTC | #1
Ping!
Is this patch okay for 2.22?

On 07/09/2015 10:23 AM, Stefan Liebler wrote:
> On 07/08/2015 04:45 PM, Carlos O'Donell wrote:
>> On 07/08/2015 10:43 AM, Carlos O'Donell wrote:
>>> On 07/08/2015 08:00 AM, Stefan Liebler wrote:
>>>> On 07/07/2015 09:02 PM, Carlos O'Donell wrote:
>>>>> On 07/07/2015 01:47 PM, H.J. Lu wrote:
>>>>>> I opened:
>>>>>> https://sourceware.org/bugzilla/show_bug.cgi?id=18635
>>>>>
>>>>> Stefan,
>>>>>
>>>>> Please fix this promptly as glibc 2.22 will be released
>>>>> shortly and the test results should be clean. If we can't
>>>>> fix it promptly, then we should revert the test changes.
>>>>>
>>>>> Cheers,
>>>>> Carlos.
>>>>>
>>>> Hi,
>>>>
>>>> the testcase seems to be okay, but there is a bug in i686 backtrace
>>>> handling if the context was set via makecontext.
>>>> If we revert the test changes, the test case will pass, but the bug
>>>> is only hidden.
>>>
>>> If that's the case then please file a bug on sourceware for
>>> this particular failure, mark the test as XFAIL for i686 and
>>> use a comment to reference the bug when you mark it XFAIL.
>>
>> Bug 18635 was already filed by H.J, so use that.
>>
>> c.
>>
>>
>
> This patch marks stdlib/tst-makecontext as XFAIL for i686.
> Ok to commit?
>
> Bye
> Stefan
>
> ---
> 2015-07-09  Stefan Liebler  <stli@linux.vnet.ibm.com>
>
>      * sysdeps/i386/i686/Makefile (test-xfail-tst-makecontext):
>      New variable.
  
Carlos O'Donell July 14, 2015, 4:13 p.m. UTC | #2
On 07/14/2015 02:11 AM, Stefan Liebler wrote:
> Ping!
> Is this patch okay for 2.22?

Yes, please check this in.

c.
  
Andreas Schwab Aug. 4, 2015, 10:13 a.m. UTC | #3
Stefan Liebler <stli@linux.vnet.ibm.com> writes:

> This patch marks stdlib/tst-makecontext as XFAIL for i686.

Why i686?  It fails on any ix86.

Andreas.
  
Stefan Liebler Aug. 4, 2015, 1:15 p.m. UTC | #4
On 08/04/2015 12:13 PM, Andreas Schwab wrote:
> Stefan Liebler <stli@linux.vnet.ibm.com> writes:
>
>> This patch marks stdlib/tst-makecontext as XFAIL for i686.
>
> Why i686?  It fails on any ix86.
>
> Andreas.
>
There was a report, that tst-makecontext failes on i686.
Thus for i686 it was marked as XFAIL - no other reason.
  

Patch

diff --git a/sysdeps/i386/i686/Makefile b/sysdeps/i386/i686/Makefile
index 5ce9fc6..83517c4 100644
--- a/sysdeps/i386/i686/Makefile
+++ b/sysdeps/i386/i686/Makefile
@@ -18,3 +18,9 @@  ASFLAGS-.op += -Wa,-mtune=i686
 ASFLAGS-.og += -Wa,-mtune=i686
 ASFLAGS-.oS += -Wa,-mtune=i686
 endif
+
+ifeq ($(subdir),stdlib)
+# _Unwind_Backtrace from libgcc produces a segmentation fault if it was
+# called within a context created by makecontext. See Bug 18635.
+test-xfail-tst-makecontext = yes
+endif