On Fri, Oct 15, 2021 at 8:49 AM Khem Raj <raj.k...@gmail.com> wrote: > > These patches are already available in 3.0
Yes! Please remove these ASAP. I'm seeing these patches cause a break in my builds of the poky master branch. https://gitlab.com/jonmason00/poky/-/jobs/1684096385 Thanks, Jon > > Signed-off-by: Khem Raj <raj.k...@gmail.com> > --- > ...ort-for-io_pgetevents_time64-syscall.patch | 62 ------------ > ...ort-for-io_pgetevents_time64-syscall.patch | 99 ------------------- > .../openssl/openssl_3.0.0.bb | 5 - > 3 files changed, 166 deletions(-) > delete mode 100644 > meta/recipes-connectivity/openssl/openssl/0003-Add-support-for-io_pgetevents_time64-syscall.patch > delete mode 100644 > meta/recipes-connectivity/openssl/openssl/0004-Fixup-support-for-io_pgetevents_time64-syscall.patch > > diff --git > a/meta/recipes-connectivity/openssl/openssl/0003-Add-support-for-io_pgetevents_time64-syscall.patch > > b/meta/recipes-connectivity/openssl/openssl/0003-Add-support-for-io_pgetevents_time64-syscall.patch > deleted file mode 100644 > index d62b9344c1..0000000000 > --- > a/meta/recipes-connectivity/openssl/openssl/0003-Add-support-for-io_pgetevents_time64-syscall.patch > +++ /dev/null > @@ -1,62 +0,0 @@ > -From 5b5e2985f355c8e99c196d9ce5d02c15bebadfbc Mon Sep 17 00:00:00 2001 > -From: Alistair Francis <alistair.fran...@wdc.com> > -Date: Thu, 29 Aug 2019 13:56:21 -0700 > -Subject: [PATCH] Add support for io_pgetevents_time64 syscall > - > -32-bit architectures that are y2038 safe don't include syscalls that use > -32-bit time_t. Instead these architectures have suffixed syscalls that > -always use a 64-bit time_t. In the case of the io_getevents syscall the > -syscall has been replaced with the io_pgetevents_time64 syscall instead. > - > -This patch changes the io_getevents() function to use the correct > -syscall based on the avaliable syscalls and the time_t size. We will > -only use the new 64-bit time_t syscall if the architecture is using a > -64-bit time_t. This is to avoid having to deal with 32/64-bit > -conversions and relying on a 64-bit timespec struct on 32-bit time_t > -platforms. As of Linux 5.3 there are no 32-bit time_t architectures > -without __NR_io_getevents. In the future if a 32-bit time_t architecture > -wants to use the 64-bit syscalls we can handle the conversion. > - > -This fixes build failures on 32-bit RISC-V. > - > -Signed-off-by: Alistair Francis <alistair.fran...@wdc.com> > - > -Reviewed-by: Richard Levitte <levi...@openssl.org> > -Reviewed-by: Paul Dale <paul.d...@oracle.com> > -(Merged from https://github.com/openssl/openssl/pull/9819) > -Upstream-Status: Accepted > ---- > - engines/e_afalg.c | 16 ++++++++++++++++ > - 1 file changed, 16 insertions(+) > - > -diff --git a/engines/e_afalg.c b/engines/e_afalg.c > -index dacbe358cb..99516cb1bb 100644 > ---- a/engines/e_afalg.c > -+++ b/engines/e_afalg.c > -@@ -125,7 +125,23 @@ static ossl_inline int io_getevents(aio_context_t ctx, > long min, long max, > - struct io_event *events, > - struct timespec *timeout) > - { > -+#if defined(__NR_io_getevents) > - return syscall(__NR_io_getevents, ctx, min, max, events, timeout); > -+#elif defined(__NR_io_pgetevents_time64) > -+ /* Let's only support the 64 suffix syscalls for 64-bit time_t. > -+ * This simplifies the code for us as we don't need to use a 64-bit > -+ * version of timespec with a 32-bit time_t and handle converting > -+ * between 64-bit and 32-bit times and check for overflows. > -+ */ > -+ if (sizeof(timeout->tv_sec) == 8) > -+ return syscall(__NR_io_pgetevents_time64, ctx, min, max, events, > timeout, NULL); > -+ else { > -+ errno = ENOSYS; > -+ return -1; > -+ } > -+#else > -+# error "We require either the io_getevents syscall or > __NR_io_pgetevents_time64." > -+#endif > - } > - > - static void afalg_waitfd_cleanup(ASYNC_WAIT_CTX *ctx, const void *key, > --- > -2.30.1 > - > diff --git > a/meta/recipes-connectivity/openssl/openssl/0004-Fixup-support-for-io_pgetevents_time64-syscall.patch > > b/meta/recipes-connectivity/openssl/openssl/0004-Fixup-support-for-io_pgetevents_time64-syscall.patch > deleted file mode 100644 > index c8bc6f5c68..0000000000 > --- > a/meta/recipes-connectivity/openssl/openssl/0004-Fixup-support-for-io_pgetevents_time64-syscall.patch > +++ /dev/null > @@ -1,99 +0,0 @@ > -From e5499a3cac1e823c3e0697e8667e952317b70cc8 Mon Sep 17 00:00:00 2001 > -From: Alistair Francis <alistair.fran...@wdc.com> > -Date: Thu, 4 Mar 2021 12:10:11 -0500 > -Subject: [PATCH] Fixup support for io_pgetevents_time64 syscall > - > -This is a fixup for the original commit > 5b5e2985f355c8e99c196d9ce5d02c15bebadfbc > -"Add support for io_pgetevents_time64 syscall" that didn't correctly > -work for 32-bit architecutres with a 64-bit time_t that aren't RISC-V. > - > -For a full discussion of the issue see: > -https://github.com/openssl/openssl/commit/5b5e2985f355c8e99c196d9ce5d02c15bebadfbc > - > -Signed-off-by: Alistair Francis <alistair.fran...@wdc.com> > - > -Reviewed-by: Tomas Mraz <to...@openssl.org> > -Reviewed-by: Paul Dale <pa...@openssl.org> > -(Merged from https://github.com/openssl/openssl/pull/14432) > -Upstream-Status: Accepted > ---- > - engines/e_afalg.c | 55 ++++++++++++++++++++++++++++++++++++----------- > - 1 file changed, 42 insertions(+), 13 deletions(-) > - > -diff --git a/engines/e_afalg.c b/engines/e_afalg.c > -index 9480d7c24b..4e9d67db2d 100644 > ---- a/engines/e_afalg.c > -+++ b/engines/e_afalg.c > -@@ -124,27 +124,56 @@ static ossl_inline int io_read(aio_context_t ctx, long > n, struct iocb **iocb) > - return syscall(__NR_io_submit, ctx, n, iocb); > - } > - > -+/* A version of 'struct timespec' with 32-bit time_t and nanoseconds. */ > -+struct __timespec32 > -+{ > -+ __kernel_long_t tv_sec; > -+ __kernel_long_t tv_nsec; > -+}; > -+ > - static ossl_inline int io_getevents(aio_context_t ctx, long min, long max, > - struct io_event *events, > - struct timespec *timeout) > - { > -+#if defined(__NR_io_pgetevents_time64) > -+ /* Check if we are a 32-bit architecture with a 64-bit time_t */ > -+ if (sizeof(*timeout) != sizeof(struct __timespec32)) { > -+ int ret = syscall(__NR_io_pgetevents_time64, ctx, min, max, events, > -+ timeout, NULL); > -+ if (ret == 0 || errno != ENOSYS) > -+ return ret; > -+ } > -+#endif > -+ > - #if defined(__NR_io_getevents) > -- return syscall(__NR_io_getevents, ctx, min, max, events, timeout); > --#elif defined(__NR_io_pgetevents_time64) > -- /* Let's only support the 64 suffix syscalls for 64-bit time_t. > -- * This simplifies the code for us as we don't need to use a 64-bit > -- * version of timespec with a 32-bit time_t and handle converting > -- * between 64-bit and 32-bit times and check for overflows. > -- */ > -- if (sizeof(timeout->tv_sec) == 8) > -- return syscall(__NR_io_pgetevents_time64, ctx, min, max, events, > timeout, NULL); > -+ if (sizeof(*timeout) == sizeof(struct __timespec32)) > -+ /* > -+ * time_t matches our architecture length, we can just use > -+ * __NR_io_getevents > -+ */ > -+ return syscall(__NR_io_getevents, ctx, min, max, events, timeout); > - else { > -- errno = ENOSYS; > -- return -1; > -+ /* > -+ * We don't have __NR_io_pgetevents_time64, but we are using a > -+ * 64-bit time_t on a 32-bit architecture. If we can fit the > -+ * timeout value in a 32-bit time_t, then let's do that > -+ * and then use the __NR_io_getevents syscall. > -+ */ > -+ if (timeout && timeout->tv_sec == (long)timeout->tv_sec) { > -+ struct __timespec32 ts32; > -+ > -+ ts32.tv_sec = (__kernel_long_t) timeout->tv_sec; > -+ ts32.tv_nsec = (__kernel_long_t) timeout->tv_nsec; > -+ > -+ return syscall(__NR_io_getevents, ctx, min, max, events, ts32); > -+ } else { > -+ return syscall(__NR_io_getevents, ctx, min, max, events, NULL); > -+ } > - } > --#else > --# error "We require either the io_getevents syscall or > __NR_io_pgetevents_time64." > - #endif > -+ > -+ errno = ENOSYS; > -+ return -1; > - } > - > - static void afalg_waitfd_cleanup(ASYNC_WAIT_CTX *ctx, const void *key, > --- > -2.30.1 > - > diff --git a/meta/recipes-connectivity/openssl/openssl_3.0.0.bb > b/meta/recipes-connectivity/openssl/openssl_3.0.0.bb > index d8c50a8011..67343bedcc 100644 > --- a/meta/recipes-connectivity/openssl/openssl_3.0.0.bb > +++ b/meta/recipes-connectivity/openssl/openssl_3.0.0.bb > @@ -18,11 +18,6 @@ SRC_URI:append:class-nativesdk = " \ > file://environment.d-openssl.sh \ > " > > -SRC_URI:append:riscv32 = " \ > - file://0003-Add-support-for-io_pgetevents_time64-syscall.patch \ > - file://0004-Fixup-support-for-io_pgetevents_time64-syscall.patch \ > - " > - > SRC_URI[sha256sum] = > "59eedfcb46c25214c9bd37ed6078297b4df01d012267fe9e9eee31f61bc70536" > > inherit lib_package multilib_header multilib_script ptest perlnative > -- > 2.33.1 > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#157003): https://lists.openembedded.org/g/openembedded-core/message/157003 Mute This Topic: https://lists.openembedded.org/mt/86337862/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-