[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.21.1809191706090.26757@digraph.polyomino.org.uk>
Date: Wed, 19 Sep 2018 17:10:08 +0000
From: Joseph Myers <joseph@...esourcery.com>
To: Mathieu Desnoyers <mathieu.desnoyers@...icios.com>
CC: carlos <carlos@...hat.com>, Florian Weimer <fweimer@...hat.com>,
Thomas Gleixner <tglx@...utronix.de>,
Ben Maurer <bmaurer@...com>,
Peter Zijlstra <peterz@...radead.org>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Boqun Feng <boqun.feng@...il.com>,
Will Deacon <will.deacon@....com>,
Dave Watson <davejwatson@...com>, Paul Turner <pjt@...gle.com>,
libc-alpha <libc-alpha@...rceware.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
linux-api <linux-api@...r.kernel.org>
Subject: Re: [RFC PATCH] glibc: Perform rseq(2) registration at nptl init
and thread creation
On Wed, 19 Sep 2018, Mathieu Desnoyers wrote:
> > This looks like it's coming from the Linux kernel. Can't the relevant
> > uapi header just be used directly without copying into glibc (with due
> > care to ensure that glibc still builds if the kernel headers used for the
> > build are too old - you need such conditionals anyway if they don't define
> > the relevant syscall number)?
>
> This is indeed in the list of "things to consider" I've put in the patch
> commit message. If the usual practice is to build against uapi kernel headers
> outside of the glibc tree, I'm fine with that.
We build with, currently, 3.2 or later headers (since 3.2 is EOL there's a
case for updating the minimum in glibc for both compile time and runtime,
but I haven't proposed that since there isn't much cleanup that would
enable and there's the open question of Carlos's proposal to eliminate the
runtime check on the kernel version and just let things try to run anyway
even if it's older than the configured minimum). Functions depending on
new syscalls may return ENOSYS errors if the headers used to build glibc
were too old. Since this patch is providing a data interface rather than
functions that can set errno to ENOSYS, presumably you have some other way
of signalling unavailability which would apply both with a too-old kernel
at runtime and too-old headers at compile time.
--
Joseph S. Myers
joseph@...esourcery.com
Powered by blists - more mailing lists