From: Ingo Molnar <mingo@kernel.org>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Peter Zijlstra <peterz@infradead.org>,
Dmitry Safonov <dsafonov@virtuozzo.com>,
Andrew Lutomirski <luto@kernel.org>,
"H. Peter Anvin" <hpa@zytor.com>,
Denys Vlasenko <dvlasenk@redhat.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
Borislav Petkov <bp@alien8.de>, Brian Gerst <brgerst@gmail.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Thomas Gleixner <tglx@linutronix.de>,
"linux-tip-commits@vger.kernel.org"
<linux-tip-commits@vger.kernel.org>
Subject: Re: [tip:x86/asm] x86/entry: Rename is_{ia32,x32}_task() to in_{ia32,x32}_syscall()
Date: Fri, 22 Apr 2016 10:36:41 +0200 [thread overview]
Message-ID: <20160422083641.GA17242@gmail.com> (raw)
In-Reply-To: <CALCETrU=zws=cHjXE6N3jh=9+E4as2-3xciBPF+oV0_K1FMnzw@mail.gmail.com>
* Andy Lutomirski <luto@amacapital.net> wrote:
> On Tue, Apr 19, 2016 at 4:15 AM, Ingo Molnar <mingo@kernel.org> wrote:
> >
> > * tip-bot for Dmitry Safonov <tipbot@zytor.com> wrote:
> >
> >> Commit-ID: abfb9498ee1327f534df92a7ecaea81a85913bae
> >> Gitweb: http://git.kernel.org/tip/abfb9498ee1327f534df92a7ecaea81a85913bae
> >> Author: Dmitry Safonov <dsafonov@virtuozzo.com>
> >> AuthorDate: Mon, 18 Apr 2016 16:43:43 +0300
> >> Committer: Ingo Molnar <mingo@kernel.org>
> >> CommitDate: Tue, 19 Apr 2016 10:44:52 +0200
> >>
> >> x86/entry: Rename is_{ia32,x32}_task() to in_{ia32,x32}_syscall()
> >
> > Btw., I'm not _entirely_ happy about the 'IA32' name, but went with this name for
> > lack of a better alternative.
> >
> > So we have 4 system call modes:
> >
> > - 64-bit native
> > - 32-bit addresses with 64-bit arguments (x32)
> > - 32-bit compat syscall (x86-32 compatibility on x86-64)
> > - 32-bit native
> >
> > and we have 2 bits of data that are per system call properties:
> >
> > - TS_COMPAT in thread_info->status is set/cleared dynamically by the compat
> > syscall entry code
> >
> > - a high bit in pt_regs->orig_ax tells us whether it's an x32 system call.
> >
> > So I'd suggest the following renames to harmonize these concepts:
> >
> > - CONFIG_IA32_EMULATION => CONFIG_X86_32_ABI
> > this lines up nicely with: CONFIG_X86_X32_ABI
>
> I think I'd prefer a different interpretation: CONFIG_X86_32_ABI is
> set if CONFIG_IA32_EMULATION is set *or* CONFIG_X86_32 is set. There
> is a lot of code that manually looks for that, because what it
> actually cares about is "do we support 32-bit syscalls". Also, with
> the syscall cleanups I've been doing, a lot of the code is shared
> between native 32-bit and 32-on-64 compat, so the distinction between
> those two modes is slowly shrinking.
>
> in_ia32_syscall() is consistent with that idea: it returns true on
> native 32-bit kernels.
Ok, so how about:
- rename CONFIG_IA32_EMULATION => CONFIG_X86_32_COMPAT
- introduce CONFIG_X86_32_ABI to separate the 'convenience' functionality of
CONFIG_IA32_EMULATION from the ABI meaning.
- rename is_ia32_syscall() -> is_x86_32_syscall()
- rename is_x32_syscall() -> is_x86_x32_syscall()
- is_compat_syscall() remains as-is.
?
In the long run I'd like to get rid of two naming variants:
- Fix all names that use 'IA32' that refer to 32-bit compat functionality,
and only name the things 'IA32' that are truly Intel specific.
- Fix all names that use 'emulation' when they really refer to 32-bit compat. We
don't actually emulate anything, we are just calling convention compatible with
very little overhead. The CPU is a fully 32-bit/64-bit dual mode hardware,
there's nothing that is emulated. Calling it IA32_EMULATION was a misnomer.
Thanks,
Ingo
next prev parent reply other threads:[~2016-04-22 8:36 UTC|newest]
Thread overview: 94+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-11 15:22 [PATCH] x86/vdso: add mremap hook to vm_special_mapping Dmitry Safonov
2016-04-11 15:22 ` Dmitry Safonov
2016-04-11 15:41 ` kbuild test robot
2016-04-11 15:41 ` kbuild test robot
2016-04-11 15:54 ` Dmitry Safonov
2016-04-11 15:54 ` Dmitry Safonov
2016-04-14 16:32 ` [PATCHv2] " Dmitry Safonov
2016-04-14 16:32 ` Dmitry Safonov
2016-04-14 22:58 ` Andy Lutomirski
2016-04-14 22:58 ` Andy Lutomirski
2016-04-15 8:46 ` Dmitry Safonov
2016-04-15 8:46 ` Dmitry Safonov
2016-04-15 9:18 ` Ingo Molnar
2016-04-15 9:18 ` Ingo Molnar
2016-04-15 9:51 ` Dmitry Safonov
2016-04-15 9:51 ` Dmitry Safonov
2016-04-15 12:08 ` Dmitry Safonov
2016-04-15 12:08 ` Dmitry Safonov
2016-04-15 13:20 ` [PATCHv3 1/2] " Dmitry Safonov
2016-04-15 13:20 ` Dmitry Safonov
2016-04-15 13:20 ` [PATCHv3 2/2] x86: rename is_{ia32,x32}_task to in_{ia32,x32}_syscall Dmitry Safonov
2016-04-15 13:20 ` Dmitry Safonov
2016-04-15 16:52 ` Andy Lutomirski
2016-04-15 16:52 ` Andy Lutomirski
2016-04-15 16:55 ` Dmitry Safonov
2016-04-15 16:55 ` Dmitry Safonov
2016-04-15 13:53 ` [PATCHv3 1/2] x86/vdso: add mremap hook to vm_special_mapping kbuild test robot
2016-04-15 13:53 ` kbuild test robot
2016-04-15 14:12 ` [PATCHv4 " Dmitry Safonov
2016-04-15 14:12 ` Dmitry Safonov
2016-04-15 14:12 ` [PATCHv4 2/2] x86: rename is_{ia32,x32}_task to in_{ia32,x32}_syscall Dmitry Safonov
2016-04-15 14:12 ` Dmitry Safonov
2016-04-15 16:58 ` [PATCHv4 1/2] x86/vdso: add mremap hook to vm_special_mapping Andy Lutomirski
2016-04-15 16:58 ` Andy Lutomirski
2016-04-18 11:18 ` Dmitry Safonov
2016-04-18 11:18 ` Dmitry Safonov
2016-04-18 15:37 ` Andy Lutomirski
2016-04-18 15:37 ` Andy Lutomirski
2016-04-18 13:43 ` [PATCHv5 1/3] x86: rename is_{ia32,x32}_task to in_{ia32,x32}_syscall Dmitry Safonov
2016-04-18 13:43 ` Dmitry Safonov
2016-04-18 13:43 ` [PATCHv5 2/3] x86/vdso: add mremap hook to vm_special_mapping Dmitry Safonov
2016-04-18 13:43 ` Dmitry Safonov
2016-04-18 14:03 ` kbuild test robot
2016-04-18 14:03 ` kbuild test robot
2016-04-18 14:17 ` [PATCHv6 " Dmitry Safonov
2016-04-18 14:17 ` Dmitry Safonov
2016-04-18 14:23 ` [PATCHv7 " Dmitry Safonov
2016-04-18 14:23 ` Dmitry Safonov
2016-04-20 16:22 ` Dmitry Safonov
2016-04-20 16:22 ` Dmitry Safonov
2016-04-21 19:52 ` Andy Lutomirski
2016-04-21 19:52 ` Andy Lutomirski
2016-04-22 10:45 ` Dmitry Safonov
2016-04-22 10:45 ` Dmitry Safonov
2016-04-23 23:09 ` [PATCHv5 " kbuild test robot
2016-04-23 23:09 ` kbuild test robot
2016-04-18 13:43 ` [PATCHv5 3/3] selftest/x86: add mremap vdso 32-bit test Dmitry Safonov
2016-04-18 13:43 ` Dmitry Safonov
2016-04-21 20:01 ` Andy Lutomirski
2016-04-21 20:01 ` Andy Lutomirski
2016-04-22 11:34 ` Dmitry Safonov
2016-04-22 11:34 ` Dmitry Safonov
2016-04-19 9:34 ` [tip:x86/asm] x86/entry: Rename is_{ia32,x32}_task() to in_{ia32,x32}_syscall() tip-bot for Dmitry Safonov
2016-04-19 11:15 ` Ingo Molnar
2016-04-19 11:35 ` Borislav Petkov
2016-04-19 17:00 ` H. Peter Anvin
2016-04-19 16:04 ` Andy Lutomirski
2016-04-22 8:36 ` Ingo Molnar [this message]
2018-10-18 1:47 ` in_compat_syscall() returns from kernel thread for X86_32 NeilBrown
2018-10-18 2:37 ` Andy Lutomirski
2018-10-18 2:49 ` Al Viro
2018-10-18 4:36 ` NeilBrown
2018-10-18 17:26 ` Andy Lutomirski
2018-10-20 6:02 ` Andreas Dilger
2018-10-20 7:58 ` Andy Lutomirski
2018-10-24 1:47 ` NeilBrown
2018-10-24 13:15 ` Theodore Y. Ts'o
2018-10-24 14:32 ` Theodore Y. Ts'o
2019-01-11 22:21 ` Pavel Machek
2018-10-25 3:46 ` NeilBrown
2018-10-25 4:45 ` Andy Lutomirski
2016-04-25 11:37 ` [PATCHv8 1/2] x86/vdso: add mremap hook to vm_special_mapping Dmitry Safonov
2016-04-25 11:37 ` Dmitry Safonov
2016-04-25 11:37 ` [PATCHv8 2/2] selftest/x86: add mremap vdso test Dmitry Safonov
2016-04-25 11:37 ` Dmitry Safonov
2016-04-25 21:39 ` Andy Lutomirski
2016-04-25 21:39 ` Andy Lutomirski
2016-04-25 21:38 ` [PATCHv8 1/2] x86/vdso: add mremap hook to vm_special_mapping Andy Lutomirski
2016-04-25 21:38 ` Andy Lutomirski
2016-05-05 11:09 ` Dmitry Safonov
2016-05-05 11:52 ` Ingo Molnar
2016-05-05 11:52 ` Ingo Molnar
2016-05-05 11:55 ` Dmitry Safonov
2016-05-05 11:55 ` Dmitry Safonov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160422083641.GA17242@gmail.com \
--to=mingo@kernel.org \
--cc=bp@alien8.de \
--cc=brgerst@gmail.com \
--cc=dsafonov@virtuozzo.com \
--cc=dvlasenk@redhat.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=luto@amacapital.net \
--cc=luto@kernel.org \
--cc=peterz@infradead.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.