This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Remove tilegx port
- From: Adhemerval Zanella <adhemerval dot zanella at linaro dot org>
- To: libc-alpha at sourceware dot org
- Date: Fri, 27 Apr 2018 13:19:37 -0300
- Subject: Re: Remove tilegx port
- Autocrypt: addr=adhemerval dot zanella at linaro dot org; prefer-encrypt=mutual; keydata= xsFNBFcVGkoBEADiQU2x/cBBmAVf5C2d1xgz6zCnlCefbqaflUBw4hB/bEME40QsrVzWZ5Nq 8kxkEczZzAOKkkvv4pRVLlLn/zDtFXhlcvQRJ3yFMGqzBjofucOrmdYkOGo0uCaoJKPT186L NWp53SACXguFJpnw4ODI64ziInzXQs/rUJqrFoVIlrPDmNv/LUv1OVPKz20ETjgfpg8MNwG6 iMizMefCl+RbtXbIEZ3TE/IaDT/jcOirjv96lBKrc/pAL0h/O71Kwbbp43fimW80GhjiaN2y WGByepnkAVP7FyNarhdDpJhoDmUk9yfwNuIuESaCQtfd3vgKKuo6grcKZ8bHy7IXX1XJj2X/ BgRVhVgMHAnDPFIkXtP+SiarkUaLjGzCz7XkUn4XAGDskBNfbizFqYUQCaL2FdbW3DeZqNIa nSzKAZK7Dm9+0VVSRZXP89w71Y7JUV56xL/PlOE+YKKFdEw+gQjQi0e+DZILAtFjJLoCrkEX w4LluMhYX/X8XP6/C3xW0yOZhvHYyn72sV4yJ1uyc/qz3OY32CRy+bwPzAMAkhdwcORA3JPb kPTlimhQqVgvca8m+MQ/JFZ6D+K7QPyvEv7bQ7M+IzFmTkOCwCJ3xqOD6GjX3aphk8Sr0dq3 4Awlf5xFDAG8dn8Uuutb7naGBd/fEv6t8dfkNyzj6yvc4jpVxwARAQABzUlBZGhlbWVydmFs IFphbmVsbGEgTmV0dG8gKExpbmFybyBWUE4gS2V5KSA8YWRoZW1lcnZhbC56YW5lbGxhQGxp bmFyby5vcmc+wsF3BBMBCAAhBQJXFRpKAhsDBQsJCAcDBRUKCQgLBRYCAwEAAh4BAheAAAoJ EKqx7BSnlIjv0e8P/1YOYoNkvJ+AJcNUaM5a2SA9oAKjSJ/M/EN4Id5Ow41ZJS4lUA0apSXW NjQg3VeVc2RiHab2LIB4MxdJhaWTuzfLkYnBeoy4u6njYcaoSwf3g9dSsvsl3mhtuzm6aXFH /Qsauav77enJh99tI4T+58rp0EuLhDsQbnBic/ukYNv7sQV8dy9KxA54yLnYUFqH6pfH8Lly sTVAMyi5Fg5O5/hVV+Z0Kpr+ZocC1YFJkTsNLAW5EIYSP9ftniqaVsim7MNmodv/zqK0IyDB GLLH1kjhvb5+6ySGlWbMTomt/or/uvMgulz0bRS+LUyOmlfXDdT+t38VPKBBVwFMarNuREU2 69M3a3jdTfScboDd2ck1u7l+QbaGoHZQ8ZNUrzgObltjohiIsazqkgYDQzXIMrD9H19E+8fw kCNUlXxjEgH/Kg8DlpoYJXSJCX0fjMWfXywL6ZXc2xyG/hbl5hvsLNmqDpLpc1CfKcA0BkK+ k8R57fr91mTCppSwwKJYO9T+8J+o4ho/CJnK/jBy1pWKMYJPvvrpdBCWq3MfzVpXYdahRKHI ypk8m4QlRlbOXWJ3TDd/SKNfSSrWgwRSg7XCjSlR7PNzNFXTULLB34sZhjrN6Q8NQZsZnMNs TX8nlGOVrKolnQPjKCLwCyu8PhllU8OwbSMKskcD1PSkG6h3r0AqzsFNBFcVGkoBEACgAdbR Ck+fsfOVwT8zowMiL3l9a2DP3Eeak23ifdZG+8Avb/SImpv0UMSbRfnw/N81IWwlbjkjbGTu oT37iZHLRwYUFmA8fZX0wNDNKQUUTjN6XalJmvhdz9l71H3WnE0wneEM5ahu5V1L1utUWTyh VUwzX1lwJeV3vyrNgI1kYOaeuNVvq7npNR6t6XxEpqPsNc6O77I12XELic2+36YibyqlTJIQ V1SZEbIy26AbC2zH9WqaKyGyQnr/IPbTJ2Lv0dM3RaXoVf+CeK7gB2B+w1hZummD21c1Laua +VIMPCUQ+EM8W9EtX+0iJXxI+wsztLT6vltQcm+5Q7tY+HFUucizJkAOAz98YFucwKefbkTp eKvCfCwiM1bGatZEFFKIlvJ2QNMQNiUrqJBlW9nZp/k7pbG3oStOjvawD9ZbP9e0fnlWJIsj 6c7pX354Yi7kxIk/6gREidHLLqEb/otuwt1aoMPg97iUgDV5mlNef77lWE8vxmlY0FBWIXuZ yv0XYxf1WF6dRizwFFbxvUZzIJp3spAao7jLsQj1DbD2s5+S1BW09A0mI/1DjB6EhNN+4bDB SJCOv/ReK3tFJXuj/HbyDrOdoMt8aIFbe7YFLEExHpSk+HgN05Lg5TyTro8oW7TSMTk+8a5M kzaH4UGXTTBDP/g5cfL3RFPl79ubXwARAQABwsFfBBgBCAAJBQJXFRpKAhsMAAoJEKqx7BSn lIjvI/8P/jg0jl4Tbvg3B5kT6PxJOXHYu9OoyaHLcay6Cd+ZrOd1VQQCbOcgLFbf4Yr+rE9l mYsY67AUgq2QKmVVbn9pjvGsEaz8UmfDnz5epUhDxC6yRRvY4hreMXZhPZ1pbMa6A0a/WOSt AgFj5V6Z4dXGTM/lNManr0HjXxbUYv2WfbNt3/07Db9T+GZkpUotC6iknsTA4rJi6u2ls0W9 1UIvW4o01vb4nZRCj4rni0g6eWoQCGoVDk/xFfy7ZliR5B+3Z3EWRJcQskip/QAHjbLa3pml xAZ484fVxgeESOoaeC9TiBIp0NfH8akWOI0HpBCiBD5xaCTvR7ujUWMvhsX2n881r/hNlR9g fcE6q00qHSPAEgGr1bnFv74/1vbKtjeXLCcRKk3Ulw0bY1OoDxWQr86T2fZGJ/HIZuVVBf3+ gaYJF92GXFynHnea14nFFuFgOni0Mi1zDxYH/8yGGBXvo14KWd8JOW0NJPaCDFJkdS5hu0VY 7vJwKcyHJGxsCLU+Et0mryX8qZwqibJIzu7kUJQdQDljbRPDFd/xmGUFCQiQAncSilYOcxNU EMVCXPAQTteqkvA+gNqSaK1NM9tY0eQ4iJpo+aoX8HAcn4sZzt2pfUB9vQMTBJ2d4+m/qO6+ cFTAceXmIoFsN8+gFN3i8Is3u12u8xGudcBPvpoy4OoG
- Openpgp: preference=signencrypt
- References: <alpine.DEB.2.20.1804271534430.17705@digraph.polyomino.org.uk>
On 27/04/2018 12:36, Joseph Myers wrote:
> Since tile support has been removed from the Linux kernel for 4.17,
> this patch removes the (unmaintained) port to tilegx from glibc (the
> tilepro support having been previously removed). This reflects the
> general principle that a glibc port needs upstream support for the
> architecture in all the components it build-depends on (so binutils,
> GCC and the Linux kernel, for the normal case of a port supporting the
> Linux kernel but no other OS), in order to be maintainable.
>
> Apart from removal of sysdeps/tile and sysdeps/unix/sysv/linux/tile
> (omitted from the diffs below), there are updates to various comments
> referencing tile for which removal of those references seemed
> appropriate. The configuration is removed from README and from
> build-many-glibcs.py. contrib.texi keeps mention of removed
> contributions, but I updated Chris Metcalf's entry to reflect that he
> also contributed the non-removed support for the generic Linux kernel
> syscall interface. __ASSUME_FADVISE64_64_NO_ALIGN support is removed,
> as it was only used by tile.
>
> 2018-04-27 Joseph Myers <joseph@codesourcery.com>
>
> * sysdeps/tile: Remove.
> * sysdeps/unix/sysv/linux/tile: Likewise.
> * README (tilegx-*-linux-gnu): Remove from list of supported
> configurations.
> * manual/contrib.texi (Contributors): Mention Chris Metcalf's
> contribution of support for generic Linux kernel syscall
> interface.
> * scripts/build-many-glibcs.py (Context.add_all_configs): Remove
> tilegx configurations.
> (Config.install_linux_headers): Do not handle tile.
> * sysdeps/unix/sysv/linux/aarch64/ldsodefs.h: Do not mention Tile
> in comment.
> * sysdeps/unix/sysv/linux/nios2/Makefile: Likewise.
> * sysdeps/unix/sysv/linux/posix_fadvise.c: Likewise.
> [__ASSUME_FADVISE64_64_NO_ALIGN] (__ALIGNMENT_ARG): Remove
> conditional undefine and redefine.
> * sysdeps/unix/sysv/linux/posix_fadvise64.c: Do not mention Tile
> in comment.
> [__ASSUME_FADVISE64_64_NO_ALIGN] (__ALIGNMENT_ARG): Remove
> conditional undefine and redefine.
LGTM.
>
> diff --git a/NEWS b/NEWS
> index 3d6b2c8..363e918 100644
> --- a/NEWS
> +++ b/NEWS
> @@ -57,6 +57,8 @@ Deprecated and removed features, and other changes affecting compatibility:
> these macros should first include <sys/types.h>, and then include
> <sys/sysmacros.h> if __GNU_LIBRARY__ is defined.
>
> +* The tilegx*-*-linux-gnu configurations are no longer supported.
> +
> Changes to build and runtime requirements:
>
> [Add changes to build and runtime requirements here]
Ok.
> diff --git a/README b/README
> index 2874505..27a9fd4 100644
> --- a/README
> +++ b/README
> @@ -41,7 +41,6 @@ The GNU C Library supports these configurations for using Linux kernels:
> sh[34]-*-linux-gnu
> sparc*-*-linux-gnu
> sparc64*-*-linux-gnu
> - tilegx-*-linux-gnu
>
> If you are interested in doing a port, please contact the glibc
> maintainers; see http://www.gnu.org/software/libc/ for more
Ok.
> diff --git a/manual/contrib.texi b/manual/contrib.texi
> index 0da6dcb..dd28e92 100644
> --- a/manual/contrib.texi
> +++ b/manual/contrib.texi
> @@ -265,7 +265,8 @@ version 3 (@code{i386-sequent-bsd}).
> @item
> Chris Metcalf for the port to Linux/Tile
> (@code{tilegx-@var{anything}-linux} and
> -@code{tilepro-@var{anything}-linux}).
> +@code{tilepro-@var{anything}-linux}) and support for the generic Linux
> +kernel syscall interface used by several newer ports.
>
> @item
> David Miller for contributing the port to Linux/Sparc
> diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
> index f911b20..19411c1 100755
> --- a/scripts/build-many-glibcs.py
> +++ b/scripts/build-many-glibcs.py
> @@ -376,14 +376,6 @@ class Context(object):
> 'arch': 'sparcv9',
> 'ccopts': '-m32 -mlong-double-128',
> 'cfg': ['--disable-multi-arch']}])
> - self.add_config(arch='tilegx',
> - os_name='linux-gnu',
> - glibcs=[{},
> - {'variant': '32', 'ccopts': '-m32'}])
> - self.add_config(arch='tilegxbe',
> - os_name='linux-gnu',
> - glibcs=[{},
> - {'variant': '32', 'ccopts': '-m32'}])
> self.add_config(arch='x86_64',
> os_name='linux-gnu',
> gcc_cfg=['--with-multilib-list=m64,m32,mx32'],
> @@ -1271,7 +1263,6 @@ class Config(object):
> 'riscv64': 'riscv',
> 'sh': 'sh',
> 'sparc': 'sparc',
> - 'tile': 'tile',
> 'x86_64': 'x86'}
> linux_arch = None
> for k in arch_map:
Ok.
> diff --git a/sysdeps/unix/sysv/linux/aarch64/ldsodefs.h b/sysdeps/unix/sysv/linux/aarch64/ldsodefs.h
> index 2f2f973..ff88292 100644
> --- a/sysdeps/unix/sysv/linux/aarch64/ldsodefs.h
> +++ b/sysdeps/unix/sysv/linux/aarch64/ldsodefs.h
> @@ -1,4 +1,5 @@
> -/* Run-time dynamic linker data structures for loaded ELF shared objects. Tile.
> +/* Run-time dynamic linker data structures for loaded ELF shared objects.
> + AArch64 version.
> Copyright (C) 2001-2018 Free Software Foundation, Inc.
> This file is part of the GNU C Library.
>
Ok.
> diff --git a/sysdeps/unix/sysv/linux/nios2/Makefile b/sysdeps/unix/sysv/linux/nios2/Makefile
> index d0af9ec..20910fa 100644
> --- a/sysdeps/unix/sysv/linux/nios2/Makefile
> +++ b/sysdeps/unix/sysv/linux/nios2/Makefile
> @@ -3,7 +3,7 @@ gen-as-const-headers += ucontext_i.sym
> endif
>
> ifeq ($(subdir),misc)
> -# MIPS/Tile-style cacheflush routine
> +# MIPS-style cacheflush routine
> sysdep_headers += sys/cachectl.h
> sysdep_routines += cacheflush
> endif
Ok.
> diff --git a/sysdeps/unix/sysv/linux/posix_fadvise.c b/sysdeps/unix/sysv/linux/posix_fadvise.c
> index 08ccc22..d676a68 100644
> --- a/sysdeps/unix/sysv/linux/posix_fadvise.c
> +++ b/sysdeps/unix/sysv/linux/posix_fadvise.c
> @@ -31,9 +31,8 @@
> (redefined to __NR_fadvise64_64 in kernel-features.h) that behaves as
> __NR_fadvise64_64 (without the aligment argument required for the ABI).
>
> - Third option will be used by both tile 32-bits and mips o32. Tile
> - will set __ASSUME_FADVISE64_64_NO_ALIGN to issue a 6 argument syscall,
> - while mips will use a 7 argument one with __NR_fadvise64.
> + Third option will be used by mips o32. Mips will use a 7 argument
> + syscall with __NR_fadvise64.
>
> s390 implements fadvice64_64 using a specific struct with arguments
> packed inside. This is the only implementation handled in arch-specific
> @@ -53,11 +52,6 @@ posix_fadvise (int fd, off_t offset, off_t len, int advise)
> SYSCALL_LL (offset), SYSCALL_LL (len));
> # else
>
> -# ifdef __ASSUME_FADVISE64_64_NO_ALIGN
> -# undef __ALIGNMENT_ARG
> -# define __ALIGNMENT_ARG
> -# endif
> -
> # ifndef __NR_fadvise64_64
> # define __NR_fadvise64_64 __NR_fadvise64
> # endif
Ok.
> diff --git a/sysdeps/unix/sysv/linux/posix_fadvise64.c b/sysdeps/unix/sysv/linux/posix_fadvise64.c
> index eebf10c..61dfe89 100644
> --- a/sysdeps/unix/sysv/linux/posix_fadvise64.c
> +++ b/sysdeps/unix/sysv/linux/posix_fadvise64.c
> @@ -26,18 +26,10 @@ libc_hidden_proto (__posix_fadvise64_l64)
> just after 'fd' to avoid the requirement of implementing 7-arg syscalls.
> ARM also defines __NR_fadvise64_64 as __NR_arm_fadvise64_64.
>
> - tile requires __ASSUME_ALIGNED_REGISTER_PAIRS but implements the 32-bit
> - fadvise64_64 without the padding 0 after fd.
> -
> s390 implements fadvice64_64 using a specific struct with arguments
> packed inside. This is the only implementation handled in arch-specific
> code. */
>
> -#ifdef __ASSUME_FADVISE64_64_NO_ALIGN
> -# undef __ALIGNMENT_ARG
> -# define __ALIGNMENT_ARG
> -#endif
> -
> #ifndef __NR_fadvise64_64
> # define __NR_fadvise64_64 __NR_fadvise64
> #endif
>
Ok.