Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Apr 2017 08:35:57 -0700
From:      Alfred Perlstein <alfred@freebsd.org>
To:        Jilles Tjoelker <jilles@stack.nl>
Cc:        Ngie Cooper <yaneurabeya@gmail.com>, Brooks Davis <brooks@freebsd.org>, "freebsd-testing@freebsd.org" <freebsd-testing@freebsd.org>, "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>, Alan Somers <asomers@freebsd.org>, "bdrewery@freebsd.org" <bdrewery@freebsd.org>
Subject:   Re: racy tests
Message-ID:  <9478F48E-4619-49F2-A9D8-34335C4A13AA@freebsd.org>
In-Reply-To: <20170427152926.GA88843@stack.nl>
References:  <20170425230247.GA8201@spindle.one-eyed-alien.net> <CAGHfRMD9DtJOXugffdpXwNjg-XaUE6%2BOW-gCU56Rb8STjDu7aA@mail.gmail.com> <878d2f79-df2d-0c6c-bd21-c0e663160f45@freebsd.org> <20170427152926.GA88843@stack.nl>

next in thread | previous in thread | raw e-mail | index | archive | help


> On Apr 27, 2017, at 8:29 AM, Jilles Tjoelker <jilles@stack.nl> wrote:
>=20
>> On Thu, Apr 27, 2017 at 05:47:11AM -0700, Alfred Perlstein wrote:
>> Can't something similar to this be done?
>=20
>> .(05:40:37)(bright@elvis.mu.org)
>> ~ % mkfifo derp
>> .(05:43:46)(bright@elvis.mu.org)
>> ~ % cat derp &
>> [1] 59244
>> .(05:43:53)(bright@elvis.mu.org)
>> ~ % ( pwait $! && echo "$?" > ex_status )&
>> [2] 59263
>> .(05:44:28)(bright@elvis.mu.org)
>> ~ % echo "hi" >> derp && echo "exit status: $(cat ex_status)"
>> hi
>> [2]  + done       ( pwait $! && echo "$?" > ex_status; )
>> [1]  + done       cat derp
>> exit status: 0
>=20
>> Make a fifo, lodge a cat(1) process waiting for data, pwait in the
>> background and stuff pwait's status into a file, then unstick the
>> cat(1) by writing to the fifo, and then read the exit status from
>> pwait from the file?
>=20
> Fifos are indeed a good idea. They are used various times in the /bin/sh
> tests, which should not wait for any sleeps in successful test runs (my
> main motivation for this is to be able to run the whole suite in a few
> seconds).
>=20
> In this case, however, the -t option being tested is inherently related
> to time. It would be possible to cheat by passing a very long timeout
> and cut it short by sending SIGALRM using kill (which depends on the
> concrete implementation).

Makes sense. I was worried this was the case but I couldn't find any useful d=
ocs on atf commands via google and man(3) on a 10.3 system. Thank you, your i=
dea makes sense.=20


>=20
> --=20
> Jilles Tjoelker
>=20




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9478F48E-4619-49F2-A9D8-34335C4A13AA>