On Mon, Jun 27, 2016 at 09:33:40AM -0600, Ted Unangst wrote:

> CVSROOT:      /cvs
> Module name:  src
> Changes by:   [email protected]    2016/06/27 09:33:40
> 
> Modified files:
>       lib/libc/stdlib: malloc.c 
> 
> Log message:
> defer munmap to after unlocking malloc. this can (unfortunately) be an
> expensive syscall, and we don't want to tie up other threads. there's no
> need to hold the lock, so defer it to afterwards.
> from Michael McConville
> ok deraadt

There's a race condtion here. The assignments to d_unmap_me and
unmap_me_sz are not atomic. A thread leaving could call munmap(2) on 
partiallly assigned data.

        -Otto

Reply via email to