Thread (46 messages) 46 messages, 13 authors, 2015-06-08

Re: [PATCHv2 1/2] clone: Support passing tls argument via C rather than pt_regs magic

From: <hidden>
Date: 2015-05-13 00:53:49
Also in: lkml

On Tue, May 12, 2015 at 02:22:50PM -0700, Andrew Morton wrote:
On Mon, 11 May 2015 12:29:19 -0700 Josh Triplett [off-list ref] wrote:
quoted
Introduce a new CONFIG_HAVE_COPY_THREAD_TLS for architectures to opt
into, and a new copy_thread_tls that accepts the tls parameter as an
additional unsigned long (syscall-argument-sized) argument.
Change sys_clone's tls argument to an unsigned long (which does
not change the ABI), and pass that down to copy_thread_tls.

Architectures that don't opt into copy_thread_tls will continue to
ignore the C argument to sys_clone in favor of the pt_regs captured at
kernel entry, and thus will be unable to introduce new versions of the
clone syscall.
What happens quite frequently is that we do something for x86 with the
expectation that other architectures will follow along, but this
doesn't happen.  The arch maintainers simply didn't know about it or
nobody nags them.  Nothing happens and inconsistencies hang around for
years.  eg, http://lkml.iu.edu/hypermail/linux/kernel/1504.2/04993.html
In this case, there will be a very clear incentive to switch to
CONFIG_HAVE_COPY_THREAD_TLS: if you don't, you can't enable new
syscalls.

- Josh Triplett
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help