Date: Fri, 20 Jun 2003 16:21:42 +0200 (CEST) From: Volker Stolz <stolz@i2.informatik.rwth-aachen.de> To: FreeBSD-gnats-submit@FreeBSD.org Cc: standards@FreeBSD.org Subject: standards/53554: interval timers not cleared in fork() Message-ID: <200306201421.h5KELfUh011622@menelaos.informatik.rwth-aachen.de> Resent-Message-ID: <200306201430.h5KEUCFt022053@freefall.freebsd.org>
index | next in thread | raw e-mail
>Number: 53554
>Category: standards
>Synopsis: interval timers not cleared in fork()
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: freebsd-standards
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Jun 20 07:30:11 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator: Volker Stolz
>Release: FreeBSD 4.8-STABLE i386
>Organization:
Lehrstuhl für Informatik II
>Environment:
System: FreeBSD menelaos.informatik.rwth-aachen.de 4.8-STABLE FreeBSD 4.8-STABLE #4: Tue Apr 29 11:28:13 CEST 2003 root@menelaos.informatik.rwth-aachen.de:/usr/obj/usr/src/sys/MENELAOS i386
>Description:
The FreeBSD man page says on calling fork():
"All interval timers are cleared; see setitimer(2)."
SUSv2 says that on invoking fork():
- If the Timers option is supported, per-process timers created by the
parent are not inherited by the child process.
However, a quick test reveals that only the REAL timer is stopped, PROF
and VIRTUAL keep running.
>How-To-Repeat:
Sample program which sets the timers, forks and checks if timers are still
enabled in the child at: http://www.foldr.org/~stolz/timer.c
virtual set: interval=1 500 value=1 500
REAL get: interval=0 0 value=0 0
PROF get: interval=1 500 value=1 500
VIRTUAL get: interval=1 500 value=1 500
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200306201421.h5KELfUh011622>
