This is the mail archive of the libc-help@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Determining cancellation points in glibc


Hello Carlos,

On Mon, Nov 24, 2008 at 12:27 PM, Michael Kerrisk
<mtk.manpages@googlemail.com> wrote:
I'd very much like to document which glibc functions are cancellation
points (pthread_cancel()).  But, how does one determine this
information from the glibc sources?

1. Find all syscalls.list for your machine. 2. Find all syscalls.list for generic. 3. Find all assembly implementations of functions for your machine. 4. Find all assembly implementations of functions for generic.

If #1 or #2 contains an entry with args that starts with "C" then
cancellation has been enabled for that function.

If #3 or #4 use sysdep-cancel.h macros then cancellation has been
enabled for that function.

If #3 or #4 make calls to *_enable_asynccancel and
*_disable_asynccancel then it is possible that these functions have
cancellation enabled.

Good luck!

I came to similar conclusions. But what about composite functions like printf(), scanf() etc.?


Thanks,
Loïc.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]