Fix posix/tst-glob_lstat_compat on alpha [BZ #22818]

Message ID 20180207183117.5364-1-aurelien@aurel32.net
State New
Headers show
Series
  • Fix posix/tst-glob_lstat_compat on alpha [BZ #22818]
Related show

Commit Message

Aurelien Jarno Feb. 7, 2018, 6:31 p.m.
The tst-glob_lstat_compat test needs to run tests on the previous
version of glob. On alpha, there are three versions of glob, GLIBC_2.0,
GLIBC_2.1 and GLIBC_2.27, while on other architectures there are only
the GLIBC_2.0 and GLIBC_2.27 version. Therefore on alpha the previous
version is GLIBC_2.1 and not GLIBC_2.0.

Changelog:
	[BZ #22818]
	* posix/tst-glob_lstat_compat.c [__alpha__] (glob): Access
	the GLIBC_2.1 version.
---
 ChangeLog                     | 6 ++++++
 posix/tst-glob_lstat_compat.c | 7 +++++++
 2 files changed, 13 insertions(+)

Comments

Aurelien Jarno Feb. 15, 2018, 10:01 p.m. | #1
On 2018-02-07 19:31, Aurelien Jarno wrote:
> The tst-glob_lstat_compat test needs to run tests on the previous
> version of glob. On alpha, there are three versions of glob, GLIBC_2.0,
> GLIBC_2.1 and GLIBC_2.27, while on other architectures there are only
> the GLIBC_2.0 and GLIBC_2.27 version. Therefore on alpha the previous
> version is GLIBC_2.1 and not GLIBC_2.0.
> 
> Changelog:
> 	[BZ #22818]
> 	* posix/tst-glob_lstat_compat.c [__alpha__] (glob): Access
> 	the GLIBC_2.1 version.
> ---
>  ChangeLog                     | 6 ++++++
>  posix/tst-glob_lstat_compat.c | 7 +++++++
>  2 files changed, 13 insertions(+)

Any comment about that? If not I plan to commit that over the week-end.


> diff --git a/ChangeLog b/ChangeLog
> index 56bdeea8537..8ecd00b1f91 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1,3 +1,9 @@
> +2018-02-07  Aurelien Jarno  <aurelien@aurel32.net>
> +
> +	[BZ #22818]
> +	* posix/tst-glob_lstat_compat.c [__alpha__] (glob): Access
> +	the GLIBC_2.1 version.
> +
>  2018-02-07  Joseph Myers  <joseph@codesourcery.com>
>  
>  	* scripts/build-many-glibcs.py (Context.checkout): Default MPFR
> diff --git a/posix/tst-glob_lstat_compat.c b/posix/tst-glob_lstat_compat.c
> index c46bc9e5783..22cd1f02f96 100644
> --- a/posix/tst-glob_lstat_compat.c
> +++ b/posix/tst-glob_lstat_compat.c
> @@ -35,7 +35,14 @@
>  #if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_27)
>  
>  __typeof (glob) glob;
> +/* On alpha glob exists in version GLIBC_2_0, GLIBC_2_1, and GLIBC_2_27.
> +   This test needs to access the version prior to GLIBC_2_27, which is
> +   GLIBC_2_1 on alpha, GLIBC_2_0 elsewhere.  */
> +# ifdef __alpha__
> +compat_symbol_reference (libc, glob, glob, GLIBC_2_1);
> +# else
>  compat_symbol_reference (libc, glob, glob, GLIBC_2_0);
> +# endif
>  
>  /* Compat glob should not call gl_lstat since for some old binaries it
>     might be unitialized (for instance GNUmake).  Check if it is indeed
> -- 
> 2.15.1
> 
>
Carlos O'Donell Feb. 15, 2018, 10:12 p.m. | #2
On 02/07/2018 10:31 AM, Aurelien Jarno wrote:
> The tst-glob_lstat_compat test needs to run tests on the previous
> version of glob. On alpha, there are three versions of glob, GLIBC_2.0,
> GLIBC_2.1 and GLIBC_2.27, while on other architectures there are only
> the GLIBC_2.0 and GLIBC_2.27 version. Therefore on alpha the previous
> version is GLIBC_2.1 and not GLIBC_2.0.
> 
> Changelog:
> 	[BZ #22818]
> 	* posix/tst-glob_lstat_compat.c [__alpha__] (glob): Access
> 	the GLIBC_2.1 version.
LGTM.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>

Patch

diff --git a/ChangeLog b/ChangeLog
index 56bdeea8537..8ecd00b1f91 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@ 
+2018-02-07  Aurelien Jarno  <aurelien@aurel32.net>
+
+	[BZ #22818]
+	* posix/tst-glob_lstat_compat.c [__alpha__] (glob): Access
+	the GLIBC_2.1 version.
+
 2018-02-07  Joseph Myers  <joseph@codesourcery.com>
 
 	* scripts/build-many-glibcs.py (Context.checkout): Default MPFR
diff --git a/posix/tst-glob_lstat_compat.c b/posix/tst-glob_lstat_compat.c
index c46bc9e5783..22cd1f02f96 100644
--- a/posix/tst-glob_lstat_compat.c
+++ b/posix/tst-glob_lstat_compat.c
@@ -35,7 +35,14 @@ 
 #if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_27)
 
 __typeof (glob) glob;
+/* On alpha glob exists in version GLIBC_2_0, GLIBC_2_1, and GLIBC_2_27.
+   This test needs to access the version prior to GLIBC_2_27, which is
+   GLIBC_2_1 on alpha, GLIBC_2_0 elsewhere.  */
+# ifdef __alpha__
+compat_symbol_reference (libc, glob, glob, GLIBC_2_1);
+# else
 compat_symbol_reference (libc, glob, glob, GLIBC_2_0);
+# endif
 
 /* Compat glob should not call gl_lstat since for some old binaries it
    might be unitialized (for instance GNUmake).  Check if it is indeed