libunwind-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Libunwind-devel] Linux x86_64 unw_is_signal_frame() broken?


From: Paul Pluzhnikov
Subject: Re: [Libunwind-devel] Linux x86_64 unw_is_signal_frame() broken?
Date: Mon, 19 May 2008 18:21:06 -0700

On Tue, Apr 15, 2008 at 11:08 PM, Arun Sharma <address@hidden> wrote:

> Your fix looks right to me. David, please apply.

I just discovered a "performance bug" in that same code:

the intent (according to Arun Sharma) was to only turn validation
on for this particular check, but since as->validate is never
cleared, and since 'as' always points to Ginit.c:local_addr_space
global (when !UNW_REMOTE_ONLY), the effect of 'as->validate=1'
is to introduce msync() call on every subsequent access_mem() check.

Attached patch fixes that (and also corrects comment to reflect
previous fix).

Regards,
-- 
Paul Pluzhnikov

Attachment: libunwind-patch-20080519.txt
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]