Bug#964770: lintian: lintian will get stuck on arm64
Hi,
On Mon, 13 Jul 2020 02:37:42 -0700 Felix Lechner <felix.lechner@lease-up.com> wrote:
> Hi Kentaro,
>
> On Sun, Jul 12, 2020 at 5:12 PM Kentaro Hayashi <hayashi@clear-code.com> wrote:
> >
> > Here is the reproducible code.
>
> The failure does not reproduce on the Debian arm64 porterbox amdahl.
>
> In the code above, I removed the 'print $future' statement and
> replaced $loop->await with 'say $future->get'. The result is '4',
> presumably the number of processors on amdahl.
>
> I also forwarded your bug to the IRC channel #io-async. Someone there
> tested your initial filing in the docker container, as you described,
> on a Raspberry Pi4 and then the code you submitted later. Both ran
> fine.
>
> Do you have more information about your error? If you need help
> debugging your Perl setup, I can recommend the channel #perl-help. The
> good folks there would be able to shed light on it.
>
Thank you for checking.
I've tested with docker.io 19.03.12+dfsg1-3.
% docker pull arm64v8/debian:unstable
unstable: Pulling from arm64v8/debian
75b27a953f63: Pull complete
Digest: sha256:7556a36722abe5df26d81b77059c7d002c3c8184540c0058bfa4b215000fc298
Status: Downloaded newer image for arm64v8/debian:unstable
docker.io/arm64v8/debian:unstable
% docker run -it arm64v8/debian:unstable
# apt update
# apt upgrade
# apt install -y lintian
# dpkg -l | grep lintian
ii lintian 2.84.0 all Debian package checker
# dpkg -l | grep libio-async
ii libio-async-loop-epoll-perl 0.21-1 all Perl extension for an event loop using epoll
ii libio-async-perl 0.77-3 all modules for asynchronous event-driven programming
# nproc
12
Sample code is here. (again)
use v5.20;
use warnings;
use utf8;
use autodie;
use IO::Async::Loop;
use IO::Async::Process;
my $loop = IO::Async::Loop->new;
my $future = $loop->new_future;
my $status;
my @command = ("nproc");
$loop->run_child(
command => [@command],
on_finish => sub {
my ($pid, $exitcode, $stdout, $stderr) = @_;
$status = ($exitcode >> 8);
if ($status) {
my $message = "Command @command exited with status $status";
$message .= ": $stderr" if length $stderr;
$future->fail($message);
return;
}
$future->done($stdout);
});
say $future->get;
>From the command line in docker:
# nproc
12
So, I've expected that execution result of sample is 12, but it has no
output to console. the sample code must be killed by Ctrl+C.
> I also forwarded your bug to the IRC channel #io-async. Someone there
tested your initial filing in the docker container, as you described,
on a Raspberry Pi4 and then the code you submitted later. Both ran
fine.
It is strange that it can't be reproducible on other person's docker container
because it is easy to reproduce on my debian unstable host.
I'll contact to #perl-help.
Reply to: