Fix for RISC-V build regression 64bit time syscall plumbing
select API regression fix Changes are here [1] [1] https://git.musl-libc.org/cgit/musl/log/?qt=range&q=0ce49d0a301b4142741b32773492af90f66ed3ca..f522de81ac88dddb58266c15bcfaa044c4065e19 Signed-off-by: Khem Raj <raj.k...@gmail.com> --- v2: - Move to latest tip - Add a fix to fix the ssh issue seen on AB testing ...regression-in-select-with-no-timeout.patch | 34 +++++++++++++++++++ meta/recipes-core/musl/musl_git.bb | 3 +- 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-core/musl/musl/0001-fix-regression-in-select-with-no-timeout.patch diff --git a/meta/recipes-core/musl/musl/0001-fix-regression-in-select-with-no-timeout.patch b/meta/recipes-core/musl/musl/0001-fix-regression-in-select-with-no-timeout.patch new file mode 100644 index 0000000000..b53236d41d --- /dev/null +++ b/meta/recipes-core/musl/musl/0001-fix-regression-in-select-with-no-timeout.patch @@ -0,0 +1,34 @@ +From 6528f806d290378da5103cd02a6a1a3b6109b41b Mon Sep 17 00:00:00 2001 +From: Rich Felker <dal...@aerifal.cx> +Date: Wed, 7 Aug 2019 10:18:18 -0700 +Subject: [PATCH] fix regression in select with no timeout + +commit 722a1ae3351a03ab25010dbebd492eced664853b inadvertently passed a +copy of {s,us} to the syscall even if the timeout argument tv was +null, thereby causing immediate timeout (polling) in place of +unlimited timeout. only archs using SYS_select were affected. + +Upstream-Status: Pending + +Signed-off-by: Khem Raj <raj.k...@gmail.com> +--- + src/select/select.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/select/select.c b/src/select/select.c +index e84c887f..8a786884 100644 +--- a/src/select/select.c ++++ b/src/select/select.c +@@ -35,7 +35,8 @@ int select(int n, fd_set *restrict rfds, fd_set *restrict wfds, fd_set *restrict + return __syscall_ret(r); + #endif + #ifdef SYS_select +- return syscall_cp(SYS_select, n, rfds, wfds, efds, ((long[]){s, us})); ++ return syscall_cp(SYS_select, n, rfds, wfds, efds, ++ tv ? ((long[]){s, us}) : 0); + #else + return syscall_cp(SYS_pselect6, n, rfds, wfds, efds, + tv ? ((long[]){s, ns}) : 0, ((syscall_arg_t[]){ 0, _NSIG/8 })); +-- +2.22.0 + diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb index 039932a3bc..69a007721c 100644 --- a/meta/recipes-core/musl/musl_git.bb +++ b/meta/recipes-core/musl/musl_git.bb @@ -4,7 +4,7 @@ require musl.inc inherit linuxloader -SRCREV = "0ce49d0a301b4142741b32773492af90f66ed3ca" +SRCREV = "f522de81ac88dddb58266c15bcfaa044c4065e19" BASEVER = "1.1.23" @@ -15,6 +15,7 @@ PV = "${BASEVER}+git${SRCPV}" SRC_URI = "git://git.musl-libc.org/musl \ file://0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch \ file://0002-ldso-Use-syslibdir-and-libdir-as-default-pathes-to-l.patch \ + file://0001-fix-regression-in-select-with-no-timeout.patch \ " S = "${WORKDIR}/git" -- 2.22.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core