[Toybox] [PATCH] sed: fix endless loop in "b loop" test.

enh enh at google.com
Wed Feb 13 07:45:28 PST 2019


On Wed, Feb 13, 2019, 03:53 Rob Landley <rob at landley.net wrote:

> On 2/12/19 11:48 PM, enh via Toybox wrote:
> > Very few places actually check for errors from emit, and I actually see
> > the same endless loop from "sed (GNU sed) 4.4" on current Debian, so I'm
> > not sure this isn't Broken As Designed, but an endless loop spewing
> > "short write" (or saying nothing, in the case of GNU sed) really doesn't
> > feel like useful behavior in face of EPIPE, which really isn't going to
> > fix itself. Certainly not being able to run the sed tests to completion
> > is pretty annoying --- which is why, unless we remove this test as
> > invalid, we should probably also add a SKIP_HOST=1 to the "b loop" test.
> >
> > Note that even with this fix you'll see the error twice:
> >
> >   sed: short write: Broken pipe
> >   sed: short write: Broken pipe
>
> I'm not seeing this error, make test_sed currently runs to completion
> successfully for me? (Applied anyway, but how do I trigger what you're
> seeing in
> toybox? We don't seem to have that test in sed.tests?)
>

Yeah, you do, it's the one called "b loop". I mentioned it on the list when
it started happening. It's been completely reproducible for me on Debian
for months now, but it did seem to come from nowhere.

As I discovered last night, it's actually affecting GNU sed too, which
strace shows just ignoring EPIPE from write(2) over and over. What happens
for you (before this patch)? Death by SIGPIPE?

Rob
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.landley.net/pipermail/toybox-landley.net/attachments/20190213/6737fcd6/attachment-0001.htm>


More information about the Toybox mailing list