Home
last modified time | relevance | path

Searched hist:b68cf25fe65a9e79ed0bd1b34129fcd245d087d0 (Results 1 – 3 of 3) sorted by relevance

/freebsd/sys/kern/
H A Duipc_sem.cdiff b68cf25fe65a9e79ed0bd1b34129fcd245d087d0 Sun Apr 07 17:26:09 CEST 2013 Jilles Tjoelker <jilles@FreeBSD.org> mqueue,ksem,shm: Fix race condition with setting UF_EXCLOSE.

POSIX mqueue, compatibility ksem and POSIX shm create a file descriptor that
has close-on-exec set. However, they do this incorrectly, leaving a window
where a thread may fork and exec while the flag has not been set yet. The
race is easily reproduced on a multicore system with one thread doing
shm_open and close and another thread doing posix_spawnp and waitpid.

Set UF_EXCLOSE via falloc()'s flags argument instead. This also simplifies
the code.

MFC after: 1 week
H A Duipc_mqueue.cdiff b68cf25fe65a9e79ed0bd1b34129fcd245d087d0 Sun Apr 07 17:26:09 CEST 2013 Jilles Tjoelker <jilles@FreeBSD.org> mqueue,ksem,shm: Fix race condition with setting UF_EXCLOSE.

POSIX mqueue, compatibility ksem and POSIX shm create a file descriptor that
has close-on-exec set. However, they do this incorrectly, leaving a window
where a thread may fork and exec while the flag has not been set yet. The
race is easily reproduced on a multicore system with one thread doing
shm_open and close and another thread doing posix_spawnp and waitpid.

Set UF_EXCLOSE via falloc()'s flags argument instead. This also simplifies
the code.

MFC after: 1 week
H A Duipc_shm.cdiff b68cf25fe65a9e79ed0bd1b34129fcd245d087d0 Sun Apr 07 17:26:09 CEST 2013 Jilles Tjoelker <jilles@FreeBSD.org> mqueue,ksem,shm: Fix race condition with setting UF_EXCLOSE.

POSIX mqueue, compatibility ksem and POSIX shm create a file descriptor that
has close-on-exec set. However, they do this incorrectly, leaving a window
where a thread may fork and exec while the flag has not been set yet. The
race is easily reproduced on a multicore system with one thread doing
shm_open and close and another thread doing posix_spawnp and waitpid.

Set UF_EXCLOSE via falloc()'s flags argument instead. This also simplifies
the code.

MFC after: 1 week