Linux: misc/tst-ofdlocks-compat can be a regular test

Message ID 87v9a5ep1e.fsf@oldenburg.str.redhat.com
State Committed
Headers
Series Linux: misc/tst-ofdlocks-compat can be a regular test |

Commit Message

Florian Weimer March 5, 2021, 12:57 p.m. UTC
  Now that compat_symbol_reference works in non-internal tests.
Also do not build and run the test at all on architectures which
do not have the pre-2.28 symbol version of fcntl.

---
 sysdeps/unix/sysv/linux/Makefile              | 8 +++++++-
 sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c | 8 --------
 2 files changed, 7 insertions(+), 9 deletions(-)
  

Comments

Adhemerval Zanella March 8, 2021, 1:47 p.m. UTC | #1
On 05/03/2021 09:57, Florian Weimer via Libc-alpha wrote:
> Now that compat_symbol_reference works in non-internal tests.
> Also do not build and run the test at all on architectures which
> do not have the pre-2.28 symbol version of fcntl.

LGTM, thanks.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>

> 
> ---
>  sysdeps/unix/sysv/linux/Makefile              | 8 +++++++-
>  sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c | 8 --------
>  2 files changed, 7 insertions(+), 9 deletions(-)
> 
> diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
> index 51e28b97ac..8cc03c8145 100644
> --- a/sysdeps/unix/sysv/linux/Makefile
> +++ b/sysdeps/unix/sysv/linux/Makefile
> @@ -108,7 +108,13 @@ tests += tst-clone tst-clone2 tst-clone3 tst-fanotify tst-personality \
>  	 tst-rlimit-infinity tst-ofdlocks tst-gettid tst-gettid-kill \
>  	 tst-tgkill tst-sysvsem-linux tst-sysvmsg-linux tst-sysvshm-linux \
>  	 tst-timerfd tst-ppoll tst-futimens tst-utime tst-utimes
> -tests-internal += tst-ofdlocks-compat tst-sigcontext-get_pc
> +
> +# Test for the symbol version of fcntl that was replaced in glibc 2.28.
> +ifeq ($(have-GLIBC_2.27)$(build-shared),yesyes)
> +tests += tst-ofdlocks-compat
> +endif
> +
> +tests-internal += tst-sigcontext-get_pc
>  
>  CFLAGS-tst-sigcontext-get_pc.c = -fasynchronous-unwind-tables
>  

Ok.

> diff --git a/sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c b/sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c
> index 9169e3baf8..4af8da123f 100644
> --- a/sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c
> +++ b/sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c
> @@ -25,7 +25,6 @@
>  #include <support/check.h>
>  
>  #include <shlib-compat.h>
> -#if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_28)
>  compat_symbol_reference (libc, fcntl, fcntl, GLIBC_2_0);
>  
>  static char *temp_filename;
> @@ -86,12 +85,5 @@ do_test (void)
>  
>    return 0;
>  }
> -#else
> -static int
> -do_test (void)
> -{
> -  return 77;
> -}
> -#endif
>  
>  #include <support/test-driver.c>
> 

Ok.
  

Patch

diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
index 51e28b97ac..8cc03c8145 100644
--- a/sysdeps/unix/sysv/linux/Makefile
+++ b/sysdeps/unix/sysv/linux/Makefile
@@ -108,7 +108,13 @@  tests += tst-clone tst-clone2 tst-clone3 tst-fanotify tst-personality \
 	 tst-rlimit-infinity tst-ofdlocks tst-gettid tst-gettid-kill \
 	 tst-tgkill tst-sysvsem-linux tst-sysvmsg-linux tst-sysvshm-linux \
 	 tst-timerfd tst-ppoll tst-futimens tst-utime tst-utimes
-tests-internal += tst-ofdlocks-compat tst-sigcontext-get_pc
+
+# Test for the symbol version of fcntl that was replaced in glibc 2.28.
+ifeq ($(have-GLIBC_2.27)$(build-shared),yesyes)
+tests += tst-ofdlocks-compat
+endif
+
+tests-internal += tst-sigcontext-get_pc
 
 CFLAGS-tst-sigcontext-get_pc.c = -fasynchronous-unwind-tables
 
diff --git a/sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c b/sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c
index 9169e3baf8..4af8da123f 100644
--- a/sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c
+++ b/sysdeps/unix/sysv/linux/tst-ofdlocks-compat.c
@@ -25,7 +25,6 @@ 
 #include <support/check.h>
 
 #include <shlib-compat.h>
-#if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_28)
 compat_symbol_reference (libc, fcntl, fcntl, GLIBC_2_0);
 
 static char *temp_filename;
@@ -86,12 +85,5 @@  do_test (void)
 
   return 0;
 }
-#else
-static int
-do_test (void)
-{
-  return 77;
-}
-#endif
 
 #include <support/test-driver.c>