Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 30 Aug 2005 23:20:58 +0400
From: Solar Designer <>
Subject: Re: trivial parallel processing (4 CPUs)

I wrote:
> Another problem is that standards such as the Single Unix Specification
> do not require serialization of reads/writes from/to file descriptors.
> Whenever two or more threads read off the same fd simultaneously, the
> behavior is undefined.  [...]

A correction: this particular problem does not apply to the approach
described by Michael because the concurrent reads actually happen via
different fd's, not via duplicates of the same fd.  Similarly, the
hardening measure that I've put into Linux 2.4.x-ow kernels which would
serialize concurrent reads off the same fd does not apply here.

However, SUSv3 also says this:

"The behavior of multiple concurrent reads on the same pipe, FIFO, or
terminal device is unspecified."

So we're back to the same conclusion.

Alexander Peslyak <solar at>
GPG key ID: B35D3598  fp: 6429 0D7E F130 C13E C929  6447 73C3 A290 B35D 3598 - bringing security into open computing environments

Was I helpful?  Please give your feedback here:

Powered by blists - more mailing lists

Your e-mail address:

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.