Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sat, 20 Dec 2014 09:48:16 +0100
From: Jens Gustedt <jens.gustedt@...ia.fr>
To: musl@...ts.openwall.com
Subject: Re: Fixing multithreaded set*id() AS-safety

Hello

Am Freitag, den 19.12.2014, 22:39 -0500 schrieb Rich Felker:
> Neither approach is really attractive. Strategy 1 feels less hackish
> and more elegant (it actually makes the pthread_create code more
> elegant than it is now by having fewer special cases), but the cost
> feels wasteful. Strategy 2 is ugly but has the ugliness isolated to
> synccall.c (the internals for set*id()) where it doesn't interact with
> other parts of the code in any significant way.
> 
> Any opinions on which way we should go? I'll probably hold off to do
> any of this until the next release cycle (or maybe even later), but I
> want to go ahead and start thinking about and discussing it.

I am much more in favor of version 2 or something equivalent, because
it keeps the complexity where it belongs. As our implementation is
currently, all changes to pthread_create would equally impact
thrd_create.

C threads are an interface that knows nothing about unistd.h and that
is mean to be simple and efficient. A program that builds entirely on
C11 features to be portable will never use any of these, so the impact
of weird border cases from POSIX should be minimal, wherever we can
avoid it.

Jens


-- 
:: INRIA Nancy Grand Est ::: AlGorille ::: ICube/ICPS :::
:: ::::::::::::::: office Strasbourg : +33 368854536   ::
:: :::::::::::::::::::::: gsm France : +33 651400183   ::
:: ::::::::::::::: gsm international : +49 15737185122 ::
:: http://icube-icps.unistra.fr/index.php/Jens_Gustedt ::



[ CONTENT OF TYPE application/pgp-signature SKIPPED ]

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ