>I think of msync as a filter for bogus addresses, not a reliable guarantee.
>The way libunwind is being used now (always on heap profiling), any slowdow=
>n
>would cause people to compile code with frame pointers and use a simpler
>unwinder.

Right. In our application it was more of a crash stack dump mechanism,
so reliability trumped performance.

>If there is a way to check if a given virtual address is a known good stack
>address, we could use that. But unfortunately there is no portable way of
>doing that.

Well, catching SIGSEGV is fairly portable, but of course both fairly
slow and generally messy (not thread-safe, does not compose well, etc).

By the way, why MS_SYNC and not MS_ASYNC? Doesn't it matter at all, on
any platform, for anonymous memory?


_______________________________________________
Libunwind-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/libunwind-devel

Reply via email to