Hello,

within uClibc we reuse some of the functions (mostly their __GI_X
counterparts by libc_hidden_proto(). By having the cancellation
in libc, we most of the time reuse the cancellable version
Currently we dedicately define (as glibc does) where the non-cancellable
function should be used (by using FUNC_not_cancel*/not-cancel.h).
There are 2 approaches:
1. use it the glibc-way (and probably adding bloat at runtime for unneeded
cancellation-handling).
2. invert the usage and use per default the non-cancellable functions within 
uClibc, using the cancellable ones only if it is unavoidable
(or necessary or we benefit sizewise).
At least libc would benefit of this (to reuse these in other libs out of
libc we need to either export them, or provide a structure with pointers
to use them within libpthread/librt).
If the cancellable version is used, it might also be documented, why this
has to happen.

A good example (although not quite correct) is the use of close()
within libc. In most of the cases close_not_cancel_no_status
would be more appropiate, since there is no error checking done...

Opinions?

Personally I would opt for 2.

Thanks, Peter
-- 
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de
_______________________________________________
uClibc mailing list
uClibc@uclibc.org
http://lists.busybox.net/mailman/listinfo/uclibc

Reply via email to