Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Perl: porters

[perl #119097] print returning EINTR in 5.14

 

 

Perl porters RSS feed   Index | Next | Previous | View Threaded


perlbug-followup at perl

Jul 31, 2013, 12:30 PM

Post #1 of 14 (47 views)
Permalink
[perl #119097] print returning EINTR in 5.14

# New Ticket Created by Victor Efimov
# Please include the string: [perl #119097]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097 >


Test case:

#!/usr/bin/env perl

use strict;
use warnings;
use utf8;
use Test::More tests => 20;
use Time::HiRes qw/usleep ualarm/;
use IO::Pipe;


local $SIG{ALRM} = sub { print STDERR "ALRM $$\n" };
my $sample = 'abxhrtf6';
my $full_sample = 'abxhrtf6' x (8192-7);
my $sample_l = length $full_sample;

my $ppid = $$;
my $fh = new IO::Pipe;

if (my $pid = fork()) {
my $child_exited = 0;
$fh->reader();
$fh->autoflush(1);
$fh->blocking(1);
binmode $fh, ":perlio";

usleep 100_000;
for (1..10) {
my $n = read($fh, my $x, $sample_l);
die "EOF" unless $n;
is $n, $sample_l, "should return right amount of data";
ok $x eq $full_sample, "should return right data"
}

while(wait() != -1 ){};
} else {
$fh->writer();
$fh->autoflush(1);
$fh->blocking(1);
binmode $fh, ":perlio";

for (1..10) {
ualarm(10_000);
while ( !print($fh $full_sample) && $!{EINTR} ) { print STDERR
"print failed: [ $! ]\n" };
ualarm(0);
}

exit(0);
}

1;

__END__


Works fine under all perls ( Linux ), except perl-5.14

when works fine:

1..20
ALRM 32265
ok 1 - should return right amount of data
ok 2 - should return right data
ok 3 - should return right amount of data
ok 4 - should return right data
ok 5 - should return right amount of data
ok 6 - should return right data
ok 7 - should return right amount of data
ok 8 - should return right data
ok 9 - should return right amount of data
ok 10 - should return right data
ok 11 - should return right amount of data
ok 12 - should return right data
ok 13 - should return right amount of data
ok 14 - should return right data
ok 15 - should return right amount of data
ok 16 - should return right data
ok 17 - should return right amount of data
ok 18 - should return right data
ok 19 - should return right amount of data
ok 20 - should return right data


in 5.14:

1..20
ALRM 2058
print failed: [ Interrupted system call ]
print failed: [ Interrupted system call ]
ok 1 - should return right amount of data
ok 2 - should return right data
print failed: [ Interrupted system call ]
ok 3 - should return right amount of data
ok 4 - should return right data
print failed: [ Interrupted system call ]
ok 5 - should return right amount of data
ok 6 - should return right data
print failed: [ Interrupted system call ]
ok 7 - should return right amount of data
ok 8 - should return right data
print failed: [ Interrupted system call ]
ok 9 - should return right amount of data
ok 10 - should return right data
print failed: [ Interrupted system call ]
ok 11 - should return right amount of data
ok 12 - should return right data
print failed: [ Interrupted system call ]
ok 13 - should return right amount of data
ok 14 - should return right data
print failed: [ Interrupted system call ]
ok 15 - should return right amount of data
ok 16 - should return right data
print failed: [ Interrupted system call ]
ok 17 - should return right amount of data
ok 18 - should return right data
ok 19 - should return right amount of data
ok 20 - should return right data
print failed: [ Interrupted system call ]
^C

so print returns undef + EINTR, and even if restart print operation, it
hangs, with both :perlio or :raw mode.

possible similar issue: http://www.perlmonks.org/?node_id=1026542

I wonder if this a bug, maybe a fix should be backported, or a test case
created.


davem at iabyn

Jul 31, 2013, 3:39 PM

Post #2 of 14 (45 views)
Permalink
Re: [perl #119097] print returning EINTR in 5.14 [In reply to]

On Wed, Jul 31, 2013 at 12:30:58PM -0700, Victor Efimov wrote:
(stuff about EINTR)
> I wonder if this a bug, maybe a fix should be backported, or a test case
> created.

This was fixed in 5.15.4 with the following commit. It's unlikely to to
be back-ported to 5.14.x, since that branch is now end-of-life.


commit be48bbe8d671b6841c3ec7cb734b98071afe3cd9
Author: Chip <chip [at] pobox>
Date: Mon Sep 19 23:51:49 2011 -0700

add a couple missing LEAVEs in perlio_async_run()

--
Justice is when you get what you deserve.
Law is when you get what you pay for.


perlbug-followup at perl

Jul 31, 2013, 4:10 PM

Post #3 of 14 (45 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

Ok, what if I try to rework this poc code as test case, and submit as patch?

Seems this code fails also on 5.8.x (probably different reason), and
commit be48bbe8d671b6841c3ec7cb734b98071afe3cd9 does not contain test.

On Wed Jul 31 15:40:17 2013, davem wrote:
> On Wed, Jul 31, 2013 at 12:30:58PM -0700, Victor Efimov wrote:
> (stuff about EINTR)
> > I wonder if this a bug, maybe a fix should be backported, or a test case
> > created.
>
> This was fixed in 5.15.4 with the following commit. It's unlikely to to
> be back-ported to 5.14.x, since that branch is now end-of-life.
>
>
> commit be48bbe8d671b6841c3ec7cb734b98071afe3cd9
> Author: Chip <chip [at] pobox>
> Date: Mon Sep 19 23:51:49 2011 -0700
>
> add a couple missing LEAVEs in perlio_async_run()
>




---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097


perlbug-followup at perl

Jul 31, 2013, 5:58 PM

Post #4 of 14 (45 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

On Wed Jul 31 16:10:43 2013, vsespb wrote:
> Ok, what if I try to rework this poc code as test case, and submit as
patch?
>
> Seems this code fails also on 5.8.x (probably different reason), and
> commit be48bbe8d671b6841c3ec7cb734b98071afe3cd9 does not contain test.

If you could, that would be much appreciated.

--

Father Chrysostomos


---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097


perlbug-followup at perl

Aug 2, 2013, 3:43 AM

Post #5 of 14 (41 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

patch attached

On Wed Jul 31 17:58:23 2013, sprout wrote:
> On Wed Jul 31 16:10:43 2013, vsespb wrote:
> > Ok, what if I try to rework this poc code as test case, and submit as
> patch?
> >
> > Seems this code fails also on 5.8.x (probably different reason), and
> > commit be48bbe8d671b6841c3ec7cb734b98071afe3cd9 does not contain test.
>
> If you could, that would be much appreciated.
>




---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097
Attachments: 0001-Print-and-EINTR-test.patch (2.84 KB)


nick at ccl4

Aug 8, 2013, 1:58 AM

Post #6 of 14 (30 views)
Permalink
Re: [perl #119097] print returning EINTR in 5.14 [In reply to]

On Fri, Aug 02, 2013 at 03:43:07AM -0700, Victor Efimov via RT wrote:
> patch attached
>
> On Wed Jul 31 17:58:23 2013, sprout wrote:
> > On Wed Jul 31 16:10:43 2013, vsespb wrote:
> > > Ok, what if I try to rework this poc code as test case, and submit as
> > patch?
> > >
> > > Seems this code fails also on 5.8.x (probably different reason), and
> > > commit be48bbe8d671b6841c3ec7cb734b98071afe3cd9 does not contain test.
> >
> > If you could, that would be much appreciated.
> >

I've added the file to MANIFEST, edited the commit message slightly:

commit 4a7b8c665e85a42957110900dd00dd5accaf9e46
Author: Victor <victor [at] vsespb>
Date: Fri Aug 2 14:39:59 2013 +0400

Test that print() is not returning EINTR.

fails under 5.14.x ( see RT #119097 )
also fails under 5.8.x

Currently test enabled on linux/bsd/solaris/darwin

MANIFEST | 1 +
t/io/eintr_print.t | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 88 insertions(+), 0 deletions(-)


and pushed it to smoke-me/nicholas/rt-119097


I admit that I *haven't* actually looked closely at the code.

Nicholas Clark


perlbug-followup at perl

Aug 10, 2013, 3:51 PM

Post #7 of 14 (22 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

On Thu Aug 08 01:58:52 2013, nicholas wrote:
> On Fri, Aug 02, 2013 at 03:43:07AM -0700, Victor Efimov via RT wrote:
> > patch attached
> >
> > On Wed Jul 31 17:58:23 2013, sprout wrote:
> > > On Wed Jul 31 16:10:43 2013, vsespb wrote:
> > > > Ok, what if I try to rework this poc code as test case, and
> submit as
> > > patch?
> > > >
> > > > Seems this code fails also on 5.8.x (probably different reason),
> and
> > > > commit be48bbe8d671b6841c3ec7cb734b98071afe3cd9 does not contain
> test.
> > >
> > > If you could, that would be much appreciated.
> > >
>
> I've added the file to MANIFEST, edited the commit message slightly:
>
> commit 4a7b8c665e85a42957110900dd00dd5accaf9e46
> Author: Victor <victor [at] vsespb>
> Date: Fri Aug 2 14:39:59 2013 +0400
>
> Test that print() is not returning EINTR.
>
> fails under 5.14.x ( see RT #119097 )
> also fails under 5.8.x
>
> Currently test enabled on linux/bsd/solaris/darwin
>
> MANIFEST | 1 +
> t/io/eintr_print.t | 87
> ++++++++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 88 insertions(+), 0 deletions(-)
>
>
> and pushed it to smoke-me/nicholas/rt-119097
>
>
> I admit that I *haven't* actually looked closely at the code.

This test has blocked one of my darwin smokers, but doesn't appear to
block every time:

bash-3.2$ ps w
PID TT STAT TIME COMMAND
1466 s000 Ss 0:00.02 -bash
1788 s000 S+ 0:00.84 screen -S smoke
1794 s001 S 0:00.02 bash
1806 s001 S+ 0:00.53 perl /Users/perlsmoke/bin/smoke-me-smoker.pl
smoke.cfg
1899 s001 S+ 0:00.00 sh -c cd /Users/perlsmoke/smoke-me/smoke &&
./smokecurrent.sh -nosmartsmoke -nomail </dev/null
1900 s001 SN+ 0:00.01 /bin/sh ./smokecurrent.sh -nosmartsmoke -nomail
1902 s001 SN+ 0:01.43 /usr/bin/perl ./smokeperl.pl -c
smokecurrent_config -nosmartsmoke -nomail
17935 s001 SN+ 0:00.14 make test_harness
21640 s001 SN+ 0:00.00 /bin/sh -e ./runtests choose
21642 s001 SN+ 0:40.22 ./perl harness
22314 s001 SN+ 0:00.04 ./perl -I.. -MTestInit io/eintr_print.t
22315 s001 ZN+ 0:00.00 (perl)
58632 s002 S 0:00.02 bash
bash-3.2$ ./smokestatus.pl -am
Checking status for configuration 'smokecurrent_config' (5.11.x)
Change number 4a7b8c665e85a42957110900dd00dd5accaf9e46 started on Fri
Aug 9 10:54:54 2013.
1 out of 16 configurations finished in 1 day 21 hours 44 minutes.
1 configuration showed failures (F).
0 failures in the running configuration.
15 configurations to finish, estimated completion in 28 days 13
hours 53 minutes
Average smoke duration: 1 day 21 hours 44 minutes.
Matrix, using cc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM
build 2335.15.00):
v5.19.2-316-g4a7b8c6 Configuration (common) none
----------- ---------------------------------------------------------
F O ? -
| | | +----- PERLIO = perlio -DDEBUGGING
| | +------- PERLIO = stdio -DDEBUGGING
| +--------- PERLIO = perlio
+----------- PERLIO = stdio
bash-3.2$ uname -a
Darwin pallas.tony.develop-help.com 11.4.2 Darwin Kernel Version 11.4.2:
Thu Aug 23 16:25:48 PDT 2012; root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64

The F is from me killing the first blockage.

Running the test directly and via harness in a loop a few hundred times
didn't block.

Tony



---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097


perlbug-followup at perl

Aug 10, 2013, 5:02 PM

Post #8 of 14 (23 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

On Sat Aug 10 15:51:13 2013, tonyc wrote:
> This test has blocked one of my darwin smokers, but doesn't appear to
> block every time:

It also blocked on Linux amd64, Solaris 11, NetBSD 5.1.2.

Tony


---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097


perlbug-followup at perl

Aug 11, 2013, 1:19 AM

Post #9 of 14 (21 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

hm, that's sad :( i've tested it for stability like this on Linux x86-64
and OpenBSD:

( seq 10000 |xargs -P 100 -n 1 ./perl t/io/eintr_print.t ) && echo ALL_FINE

(i.e. 100 concurrent runs) and it was fine.

On Sat Aug 10 17:02:36 2013, tonyc wrote:
> On Sat Aug 10 15:51:13 2013, tonyc wrote:
> > This test has blocked one of my darwin smokers, but doesn't appear to
> > block every time:
>
> It also blocked on Linux amd64, Solaris 11, NetBSD 5.1.2.
>
> Tony




---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097


perlbug-followup at perl

Aug 11, 2013, 2:41 AM

Post #10 of 14 (22 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

Seems it hangs (in 100% of cases) when PERLIO=stdio

can be fixed with

skip_all("not supposed to work with stdio")
if (exists $ENV{PERLIO} && $ENV{PERLIO} =~ /stdio/ );

similar code exits in eintr.t:

# XXX for some reason the stdio layer doesn't seem to interrupt
# write system call when the alarm triggers. This makes the tests
# hang.

if (exists $ENV{PERLIO} && $ENV{PERLIO} =~ /stdio/ ) {
skip_all('stdio not supported for this script');
exit 0;
}



On Sun Aug 11 01:19:12 2013, vsespb wrote:
> hm, that's sad :( i've tested it for stability like this on Linux x86-64
> and OpenBSD:
>
> ( seq 10000 |xargs -P 100 -n 1 ./perl t/io/eintr_print.t ) && echo
ALL_FINE
>
> (i.e. 100 concurrent runs) and it was fine.
>
> On Sat Aug 10 17:02:36 2013, tonyc wrote:
> > On Sat Aug 10 15:51:13 2013, tonyc wrote:
> > > This test has blocked one of my darwin smokers, but doesn't appear to
> > > block every time:
> >
> > It also blocked on Linux amd64, Solaris 11, NetBSD 5.1.2.
> >
> > Tony
>
>




---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097


perlbug-followup at perl

Aug 11, 2013, 5:18 AM

Post #11 of 14 (22 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

Also,

(1)

http://perldoc.perl.org/perlipc.html#Deferred-Signals-%28Safe-Signals%29
> the solution is to use the :perlio layer to do IO--at least on those
handles that you want to be able to break into with signals.

http://perldoc.perl.org/PerlIO.html
> The default can be overridden by setting the environment variable
PERLIO to a space separated list of layers

it seems that the test initially had
binmode $fh, ":perlio";

but PERLIO=stdio overrides this.
so phrase "The default can be overridden by setting the environment
variable PERLIO" does not look correct. Not only default is overriden,
but any atempt to use the layer.

(2)

There is a ticket related to eintr.t
https://rt.perl.org/rt3/Ticket/Display.html?id=85842
Long story short (my understanding):

1. Commit http://perl5.git.perl.org/perl.git/commit/b83080de5c4254
introduce eintr.t problems under freebsd and some solaris versions
2. Those OS blacklisted in eintr.t
3. It still has problems on older linuxes
4. According to this comment
https://rt.perl.org/rt3/Ticket/Display.html?id=84688#txn-871204
any (or some) IO in signal handler can be a problem, however it should
not (according to perlipc)

So, according to this ticket it might be a good idea to:
a) copy OS blacklist from eintr.t to eintr_print.t
b) remove 'print "# ALRM $$\n"' from $SIG{ALRM}




On Sun Aug 11 02:41:44 2013, vsespb wrote:
> Seems it hangs (in 100% of cases) when PERLIO=stdio
>
> can be fixed with
>
> skip_all("not supposed to work with stdio")
> if (exists $ENV{PERLIO} && $ENV{PERLIO} =~ /stdio/ );
>
> similar code exits in eintr.t:
>
> # XXX for some reason the stdio layer doesn't seem to interrupt
> # write system call when the alarm triggers. This makes the tests
> # hang.
>
> if (exists $ENV{PERLIO} && $ENV{PERLIO} =~ /stdio/ ) {
> skip_all('stdio not supported for this script');
> exit 0;
> }
>
>
>
> On Sun Aug 11 01:19:12 2013, vsespb wrote:
> > hm, that's sad :( i've tested it for stability like this on Linux x86-64
> > and OpenBSD:
> >
> > ( seq 10000 |xargs -P 100 -n 1 ./perl t/io/eintr_print.t ) && echo
> ALL_FINE
> >
> > (i.e. 100 concurrent runs) and it was fine.
> >
> > On Sat Aug 10 17:02:36 2013, tonyc wrote:
> > > On Sat Aug 10 15:51:13 2013, tonyc wrote:
> > > > This test has blocked one of my darwin smokers, but doesn't
appear to
> > > > block every time:
> > >
> > > It also blocked on Linux amd64, Solaris 11, NetBSD 5.1.2.
> > >
> > > Tony
> >
> >
>
>




---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097


fawaka at gmail

Aug 11, 2013, 5:54 AM

Post #12 of 14 (21 views)
Permalink
Re: [perl #119097] print returning EINTR in 5.14 [In reply to]

On Sun, Aug 11, 2013 at 3:18 PM, Victor Efimov via RT
<perlbug-followup [at] perl> wrote:
> Also,
>
> (1)
>
> http://perldoc.perl.org/perlipc.html#Deferred-Signals-%28Safe-Signals%29
>> the solution is to use the :perlio layer to do IO--at least on those
> handles that you want to be able to break into with signals.
>
> http://perldoc.perl.org/PerlIO.html
>> The default can be overridden by setting the environment variable
> PERLIO to a space separated list of layers
>
> it seems that the test initially had
> binmode $fh, ":perlio";

binmode $fh, ":perlio" is conceptually nonsensical. You want to
specify that during open, but that's broken too :-/

> but PERLIO=stdio overrides this.
> so phrase "The default can be overridden by setting the environment
> variable PERLIO" does not look correct. Not only default is overriden,
> but any atempt to use the layer.

No, it doesn't. What you're doing is effectively both:
":stdio:perlio". This will generally block unless you're reading the
buffer size(Because :perlio is assuming read sementics underneath it,
not fread semantics). This is a known issue that can't be fixed (stdio
just sucks like that).

You can kind of fix it with a «use open IO => ":pop:perlio";», it
isn't pretty but I'm not sure what else would do the trick. PerlIO
sucks like that.

Leon


perlbug-followup at perl

Aug 11, 2013, 6:05 AM

Post #13 of 14 (21 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

ok, so easier just to

skip_all("not supposed to work with stdio")
if (exists $ENV{PERLIO} && $ENV{PERLIO} =~ /stdio/ );

like eintr.t does

On Sun Aug 11 05:55:55 2013, LeonT wrote:
> On Sun, Aug 11, 2013 at 3:18 PM, Victor Efimov via RT
> <perlbug-followup [at] perl> wrote:
> > Also,
> >
> > (1)
> >
> > http://perldoc.perl.org/perlipc.html#Deferred-Signals-%28Safe-Signals%29
> >> the solution is to use the :perlio layer to do IO--at least on those
> > handles that you want to be able to break into with signals.
> >
> > http://perldoc.perl.org/PerlIO.html
> >> The default can be overridden by setting the environment variable
> > PERLIO to a space separated list of layers
> >
> > it seems that the test initially had
> > binmode $fh, ":perlio";
>
> binmode $fh, ":perlio" is conceptually nonsensical. You want to
> specify that during open, but that's broken too :-/
>
> > but PERLIO=stdio overrides this.
> > so phrase "The default can be overridden by setting the environment
> > variable PERLIO" does not look correct. Not only default is overriden,
> > but any atempt to use the layer.
>
> No, it doesn't. What you're doing is effectively both:
> ":stdio:perlio". This will generally block unless you're reading the
> buffer size(Because :perlio is assuming read sementics underneath it,
> not fread semantics). This is a known issue that can't be fixed (stdio
> just sucks like that).
>
> You can kind of fix it with a �use open IO => ":pop:perlio";�, it
> isn't pretty but I'm not sure what else would do the trick. PerlIO
> sucks like that.
>
> Leon
>




---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097


perlbug-followup at perl

Aug 12, 2013, 2:01 AM

Post #14 of 14 (18 views)
Permalink
[perl #119097] print returning EINTR in 5.14 [In reply to]

attaching fixes to eintr_print.t

On Sun Aug 11 05:18:43 2013, vsespb wrote:
> Also,
>
> (1)
>
> http://perldoc.perl.org/perlipc.html#Deferred-Signals-%28Safe-Signals%29
> > the solution is to use the :perlio layer to do IO--at least on those
> handles that you want to be able to break into with signals.
>
> http://perldoc.perl.org/PerlIO.html
> > The default can be overridden by setting the environment variable
> PERLIO to a space separated list of layers
>
> it seems that the test initially had
> binmode $fh, ":perlio";
>
> but PERLIO=stdio overrides this.
> so phrase "The default can be overridden by setting the environment
> variable PERLIO" does not look correct. Not only default is overriden,
> but any atempt to use the layer.
>
> (2)
>
> There is a ticket related to eintr.t
> https://rt.perl.org/rt3/Ticket/Display.html?id=85842
> Long story short (my understanding):
>
> 1. Commit http://perl5.git.perl.org/perl.git/commit/b83080de5c4254
> introduce eintr.t problems under freebsd and some solaris versions
> 2. Those OS blacklisted in eintr.t
> 3. It still has problems on older linuxes
> 4. According to this comment
> https://rt.perl.org/rt3/Ticket/Display.html?id=84688#txn-871204
> any (or some) IO in signal handler can be a problem, however it should
> not (according to perlipc)
>
> So, according to this ticket it might be a good idea to:
> a) copy OS blacklist from eintr.t to eintr_print.t
> b) remove 'print "# ALRM $$\n"' from $SIG{ALRM}
>
>
>
>
> On Sun Aug 11 02:41:44 2013, vsespb wrote:
> > Seems it hangs (in 100% of cases) when PERLIO=stdio
> >
> > can be fixed with
> >
> > skip_all("not supposed to work with stdio")
> > if (exists $ENV{PERLIO} && $ENV{PERLIO} =~ /stdio/ );
> >
> > similar code exits in eintr.t:
> >
> > # XXX for some reason the stdio layer doesn't seem to interrupt
> > # write system call when the alarm triggers. This makes the tests
> > # hang.
> >
> > if (exists $ENV{PERLIO} && $ENV{PERLIO} =~ /stdio/ ) {
> > skip_all('stdio not supported for this script');
> > exit 0;
> > }
> >
> >
> >
> > On Sun Aug 11 01:19:12 2013, vsespb wrote:
> > > hm, that's sad :( i've tested it for stability like this on Linux
x86-64
> > > and OpenBSD:
> > >
> > > ( seq 10000 |xargs -P 100 -n 1 ./perl t/io/eintr_print.t ) && echo
> > ALL_FINE
> > >
> > > (i.e. 100 concurrent runs) and it was fine.
> > >
> > > On Sat Aug 10 17:02:36 2013, tonyc wrote:
> > > > On Sat Aug 10 15:51:13 2013, tonyc wrote:
> > > > > This test has blocked one of my darwin smokers, but doesn't
> appear to
> > > > > block every time:
> > > >
> > > > It also blocked on Linux amd64, Solaris 11, NetBSD 5.1.2.
> > > >
> > > > Tony
> > >
> > >
> >
> >
>
>




---
via perlbug: queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=119097
Attachments: 0025-Fixing-eintr_print.t-intermittent-hang.patch (1.98 KB)

Perl porters RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.