On Jul 29 14:26, Ken Brown wrote:
> On 7/29/2019 9:47 AM, Corinna Vinschen wrote:
> > On Jul 29 13:18, Ken Brown wrote:
> >> $ strace -o trace.out ls -lL <(grep bash .bashrc)
> >> ls: cannot access '/dev/fd/63': No such file or directory
> > 
> > No, please run bash:
> > 
> >    strace -o trace.out bash -c 'ls -lL <(grep bash .bashrc)'
> > 
> > Otherwise there's no process actually creating the pipe, given the <()
> > expression is a bash expression.
> 
> Yes, of course.  I should have realized this since it's exactly what I
> did under gdb.  Anyway, the result is the same as it was under gdb: If
> I run the command under strace, I don't see the broken pipe error.
> 
> Is it possible that debugging causes an fd to the read end of the pipe
> to stay open longer, thereby preventing the error?

The fact that you observe it sporadically points to a race condition.
Debugging serializes stuff usually running in parallel, potentially
eliminating the race.


Corinna

-- 
Corinna Vinschen
Cygwin Maintainer

Attachment: signature.asc
Description: PGP signature

Reply via email to