Message ID | 20220209051544.3280726-1-raj.khem@gmail.com |
---|---|
State | New |
Headers | show |
Series | [v4] perl: Help resolving WNOHANG and _exit in Posix module | expand |
Please submit upstream: https://github.com/jib/ipc-cmd Alex On Wed, 9 Feb 2022 at 06:15, Khem Raj <raj.khem@gmail.com> wrote: > > Signed-off-by: Khem Raj <raj.khem@gmail.com> > --- > v4: Fix filepaths in release tarballs which are different than git repo > > ...01-ipc-force-POSIX-WNOHANG-resolving.patch | 52 +++++++++++++++++++ > meta/recipes-devtools/perl/perl_5.34.0.bb | 1 + > 2 files changed, 53 insertions(+) > create mode 100644 meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch > > diff --git a/meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch b/meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch > new file mode 100644 > index 00000000000..3df15d4f08c > --- /dev/null > +++ b/meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch > @@ -0,0 +1,52 @@ > +From 0d8c411ef7e8b4452007c77eee3d83d227b86bb4 Mon Sep 17 00:00:00 2001 > +From: Khem Raj <raj.khem@gmail.com> > +Date: Tue, 8 Feb 2022 14:05:22 -0800 > +Subject: [PATCH] ipc: force POSIX::WNOHANG resolving > + > +It seems POSIX module is special and may not have autovivified (resolved) WNOHANG. > +see [1] > + > +Fixes > + Bareword "POSIX::WNOHANG" not allowed while "strict subs" > + > +[1] https://redmine.lighttpd.net/projects/lighttpd/repository/14/revisions/78eb0e39454ab3ca8e7ef77f1d014b50b3632fb9 > + > +Upstream-Status: Pending > +Signed-off-by: Khem Raj <raj.khem@gmail.com> > +--- > + cpan/IPC-Cmd/lib/IPC/Cmd.pm | 8 ++++---- > + 1 file changed, 4 insertions(+), 4 deletions(-) > + > +--- a/cpan/IPC-Cmd/lib/IPC/Cmd.pm > ++++ b/cpan/IPC-Cmd/lib/IPC/Cmd.pm > +@@ -499,7 +499,7 @@ sub kill_gently { > + next; > + } > + > +- my $waitpid = waitpid($pid, POSIX::WNOHANG); > ++ my $waitpid = waitpid($pid, POSIX::WNOHANG()); > + > + if ($waitpid eq -1) { > + $child_finished = 1; > +@@ -619,10 +619,10 @@ sub open3_run { > + # > + kill(-9, $$); > + > +- POSIX::_exit 1; > ++ POSIX::_exit(1); > + } > + > +- my $waitpid = waitpid($pid, POSIX::WNOHANG); > ++ my $waitpid = waitpid($pid, POSIX::WNOHANG()); > + > + # child finished, catch it's exit status > + if ($waitpid ne 0 && $waitpid ne -1) { > +@@ -1005,7 +1005,7 @@ sub run_forked { > + $child_finished = 1; > + } > + > +- my $waitpid = waitpid($pid, POSIX::WNOHANG); > ++ my $waitpid = waitpid($pid, POSIX::WNOHANG()); > + > + # child finished, catch it's exit status > + if ($waitpid ne 0 && $waitpid ne -1) { > diff --git a/meta/recipes-devtools/perl/perl_5.34.0.bb b/meta/recipes-devtools/perl/perl_5.34.0.bb > index e4bcfe3ce69..48d755744fe 100644 > --- a/meta/recipes-devtools/perl/perl_5.34.0.bb > +++ b/meta/recipes-devtools/perl/perl_5.34.0.bb > @@ -20,6 +20,7 @@ SRC_URI = "https://www.cpan.org/src/5.0/perl-${PV}.tar.gz;name=perl \ > file://aacd2398e766500cb5d83c4d76b642fcf31d997a.patch \ > file://ea57297a58b8f10ab885c19eec48ea076116cc1f.patch \ > file://5bc1e5fdd87aa205011512cd1e6cc655bcf677fd.patch \ > + file://0001-ipc-force-POSIX-WNOHANG-resolving.patch \ > " > SRC_URI:append:class-native = " \ > file://perl-configpm-switch.patch \ > -- > 2.35.1 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#161535): https://lists.openembedded.org/g/openembedded-core/message/161535 > Mute This Topic: https://lists.openembedded.org/mt/89016040/1686489 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
On Tue, 2022-02-08 at 21:15 -0800, Khem Raj wrote: > Signed-off-by: Khem Raj <raj.khem@gmail.com> > --- > v4: Fix filepaths in release tarballs which are different than git repo > > ...01-ipc-force-POSIX-WNOHANG-resolving.patch | 52 +++++++++++++++++++ > meta/recipes-devtools/perl/perl_5.34.0.bb | 1 + > 2 files changed, 53 insertions(+) > create mode 100644 meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch As I hinted at originally, this papers over a crack and doesn't solve the real error: https://autobuilder.yoctoproject.org/typhoon/#/builders/20/builds/5042/steps/12/logs/stdio What the real error is remains unclear too :( Cheers, Richard
On Wed, Feb 9, 2022 at 5:44 AM Richard Purdie <richard.purdie@linuxfoundation.org> wrote: > > On Tue, 2022-02-08 at 21:15 -0800, Khem Raj wrote: > > Signed-off-by: Khem Raj <raj.khem@gmail.com> > > --- > > v4: Fix filepaths in release tarballs which are different than git repo > > > > ...01-ipc-force-POSIX-WNOHANG-resolving.patch | 52 +++++++++++++++++++ > > meta/recipes-devtools/perl/perl_5.34.0.bb | 1 + > > 2 files changed, 53 insertions(+) > > create mode 100644 meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch > > As I hinted at originally, this papers over a crack and doesn't solve the real > error: > > https://autobuilder.yoctoproject.org/typhoon/#/builders/20/builds/5042/steps/12/logs/stdio > > What the real error is remains unclear too :( right, I was attempting to test if module importing/resolving was the issue but it seems it is not really the issue as I see below in your new logs, it means its being resolved ok. | Attempt to reload POSIX.pm aborted. so I guess we still are at loss here. > > Cheers, > > Richard >
diff --git a/meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch b/meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch new file mode 100644 index 00000000000..3df15d4f08c --- /dev/null +++ b/meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch @@ -0,0 +1,52 @@ +From 0d8c411ef7e8b4452007c77eee3d83d227b86bb4 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 8 Feb 2022 14:05:22 -0800 +Subject: [PATCH] ipc: force POSIX::WNOHANG resolving + +It seems POSIX module is special and may not have autovivified (resolved) WNOHANG. +see [1] + +Fixes + Bareword "POSIX::WNOHANG" not allowed while "strict subs" + +[1] https://redmine.lighttpd.net/projects/lighttpd/repository/14/revisions/78eb0e39454ab3ca8e7ef77f1d014b50b3632fb9 + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + cpan/IPC-Cmd/lib/IPC/Cmd.pm | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +--- a/cpan/IPC-Cmd/lib/IPC/Cmd.pm ++++ b/cpan/IPC-Cmd/lib/IPC/Cmd.pm +@@ -499,7 +499,7 @@ sub kill_gently { + next; + } + +- my $waitpid = waitpid($pid, POSIX::WNOHANG); ++ my $waitpid = waitpid($pid, POSIX::WNOHANG()); + + if ($waitpid eq -1) { + $child_finished = 1; +@@ -619,10 +619,10 @@ sub open3_run { + # + kill(-9, $$); + +- POSIX::_exit 1; ++ POSIX::_exit(1); + } + +- my $waitpid = waitpid($pid, POSIX::WNOHANG); ++ my $waitpid = waitpid($pid, POSIX::WNOHANG()); + + # child finished, catch it's exit status + if ($waitpid ne 0 && $waitpid ne -1) { +@@ -1005,7 +1005,7 @@ sub run_forked { + $child_finished = 1; + } + +- my $waitpid = waitpid($pid, POSIX::WNOHANG); ++ my $waitpid = waitpid($pid, POSIX::WNOHANG()); + + # child finished, catch it's exit status + if ($waitpid ne 0 && $waitpid ne -1) { diff --git a/meta/recipes-devtools/perl/perl_5.34.0.bb b/meta/recipes-devtools/perl/perl_5.34.0.bb index e4bcfe3ce69..48d755744fe 100644 --- a/meta/recipes-devtools/perl/perl_5.34.0.bb +++ b/meta/recipes-devtools/perl/perl_5.34.0.bb @@ -20,6 +20,7 @@ SRC_URI = "https://www.cpan.org/src/5.0/perl-${PV}.tar.gz;name=perl \ file://aacd2398e766500cb5d83c4d76b642fcf31d997a.patch \ file://ea57297a58b8f10ab885c19eec48ea076116cc1f.patch \ file://5bc1e5fdd87aa205011512cd1e6cc655bcf677fd.patch \ + file://0001-ipc-force-POSIX-WNOHANG-resolving.patch \ " SRC_URI:append:class-native = " \ file://perl-configpm-switch.patch \
Signed-off-by: Khem Raj <raj.khem@gmail.com> --- v4: Fix filepaths in release tarballs which are different than git repo ...01-ipc-force-POSIX-WNOHANG-resolving.patch | 52 +++++++++++++++++++ meta/recipes-devtools/perl/perl_5.34.0.bb | 1 + 2 files changed, 53 insertions(+) create mode 100644 meta/recipes-devtools/perl/files/0001-ipc-force-POSIX-WNOHANG-resolving.patch