On Thu, 2019-11-07 at 17:05 +0000, Dragan Mladjenovic wrote:
> On 01.11.2019. 11:32, Dragan Mladjenovic wrote:
> > On 10.08.2019. 00:15, Joseph Myers wrote:
> > > On Fri, 9 Aug 2019, Jeff Law wrote:
> > > 
> > > > > 2019-08-05  Dragan Mladjenovic  <dmladjeno...@wavecomp.com>
> > > > > 
> > > > >     * config.in: Regenerated.
> > > > >     * config/mips/linux.h (NEED_INDICATE_EXEC_STACK): Define
> > > > > to 1
> > > > >     for TARGET_LIBC_GNUSTACK.
> > > > >     * configure: Regenerated.
> > > > >     * configure.ac: Define TARGET_LIBC_GNUSTACK if glibc
> > > > > version is
> > > > >     found 2.31 or greater.
> > > > My only concern here is the configure bits.  So for example,
> > > > will it do
> > > > the right thing if you're cross-compiling to a MIPS linux
> > > > target?  If
> > > > so, how?  If not, do we need to make it a first class configure
> > > > option
> > > > so that it can be specified when building cross MIPS linux
> > > > toolchains?
> > > 
> > > The key point of using GCC_GLIBC_VERSION_GTE_IFELSE is that (a)
> > > it checks
> > > the target glibc headers if available when GCC is built and (b)
> > > if not
> > > available, you can still use --with-glibc-version when
> > > configuring
> > > GCC, to
> > > get the right configuration in a bootstrap compiler built before
> > > glibc is
> > > built (the latter is necessary on some architectures to get the
> > > right
> > > stack-protector configuration for bootstrapping glibc, but may be
> > > useful
> > > in other cases as well).
> > > 
> > > My main concern about this patch is the one I gave in
> > > <https://sourceware.org/ml/libc-alpha/2019-08/msg00086.html>
> > > about what
> > > the configuration mechanism should be, on a whole-toolchain
> > > level, to say
> > > whether you are OK with a requirement for a 4.8 or later kernel.
> > > 
> > 
> > Sorry for the late reply.
> > 
> > I was waiting to backport [1] to most of the glibc release branches
> > in
> > use, but I got sidetracked along the way.
> > 
> > After this patch lands the preferred way to configure gcc would be
> > using
> > --with-glibc-version=2.31 and to use said glibc.
> > If the user/distribution can live with minimal kernel requirement
> > of 4.8
> > the glibc used should be configured with --enable-kernel=4.8.
> > I also plan to backport the [1] to limit the opportunity for
> > building
> > the possibly broken glibc with the gcc w/ enabled .note.GNU-stack.
> > 
> > This is all tedious and user has to be aware of all of it to make
> > it
> > work, but hopefully over time the distributions will default to
> > --with-glibc-version=2.31 and --enable-kernel=4.8. I guess
> > providing the
> > detailed NEWS entry for this change would help a bit.
> > 
> > Is there any objections to getting this on the trunk before the end
> > of
> > stage1?
> > 
> > [1] https://sourceware.org/ml/libc-alpha/2019-08/msg00639.html
> > 
> 
> Small update and gentle ping. The glibc change was backported all
> the 
> way back to 2.24.
I think this is fine.  And yes, we'd like to get it mentioned in the
release notes since I suspect folks will want the GNU-stack ELF notes.

jeff


Reply via email to