From: Ingo Molnar <mingo@kernel.org>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Mark Rutland <mark.rutland@arm.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
linux-arch <linux-arch@vger.kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Heiko Carstens <heiko.carstens@de.ibm.com>,
"H. Peter Anvin" <hpa@zytor.com>,
Kees Cook <keescook@chromium.org>,
Andrew Lutomirski <luto@kernel.org>,
Ingo Molnar <mingo@redhat.com>,
Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [PATCH 1/3] sched/core,x86: make struct thread_info arch specific again
Date: Thu, 20 Oct 2016 08:40:45 +0200 [thread overview]
Message-ID: <20161020064045.GA29032@gmail.com> (raw)
In-Reply-To: <CALCETrUG06KGckAqr-nkPTsRnowJFJ6JxuYyg3o48t4_MRQang@mail.gmail.com>
* Andy Lutomirski <luto@amacapital.net> wrote:
> On Wed, Oct 19, 2016 at 11:28 AM, Mark Rutland <mark.rutland@arm.com> wrote:
> > From: Heiko Carstens <heiko.carstens@de.ibm.com>
> >
> > commit c65eacbe290b ("sched/core: Allow putting thread_info into
> > task_struct") made struct thread_info a generic struct with only a
> > single flags member if THREAD_INFO_IN_TASK_STRUCT is selected.
> >
> > This change however seems to be quite x86 centric, since at least the
> > generic preemption code (asm-generic/preempt.h) assumes that struct
> > thread_info also has a preempt_count member, which apparently was not
> > true for x86.
> >
> > We could add a bit more ifdefs to solve this problem too, but it seems
> > to be much simpler to make struct thread_info arch specific
> > again. This also makes the conversion to THREAD_INFO_IN_TASK_STRUCT a
> > bit easier for architectures that have a couple of arch specific stuff
> > in their thread_info definition.
> >
> > The arch specific stuff _could_ be moved to thread_struct. However
> > keeping them in thread_info makes it easier: accessing thread_info
> > members is simple, since it is at the beginning of the task_struct,
> > while the thread_struct is at the end. At least on s390 the offsets
> > needed to access members of the thread_struct (with task_struct as
> > base) are too large for various asm instructions. This is not a
> > problem when keeping these members within thread_info.
>
> Acked-by: Andy Lutomirski <luto@kernel.org>
>
> Ingo, there's a (somewhat weak) argument for sending this via
> tip/urgent: it doesn't change generated code at all, and I think it
> will avoid a silly depedency or possible conflict for the next merge
> window, since both arm64 and s390 are going to need it.
Can certainly do it if this is the final version of the patch. Mark?
Thanks,
Ingo
next prev parent reply other threads:[~2016-10-20 6:40 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-19 18:28 [PATCH 0/3] THREAD_INFO_IN_TASK prep work for arm64+s390 Mark Rutland
2016-10-19 18:28 ` [PATCH 1/3] sched/core,x86: make struct thread_info arch specific again Mark Rutland
2016-10-19 18:28 ` Mark Rutland
2016-10-19 23:19 ` Andy Lutomirski
2016-10-20 6:40 ` Ingo Molnar [this message]
2016-10-20 9:33 ` Mark Rutland
2016-10-19 18:28 ` [PATCH 2/3] thread_info: factor out restart_block Mark Rutland
2016-10-19 18:28 ` Mark Rutland
2016-10-19 23:31 ` Andy Lutomirski
2016-10-24 9:45 ` Mark Rutland
2016-10-19 18:28 ` [PATCH 3/3] thread_info: include <current.h> for THREAD_INFO_IN_TASK Mark Rutland
2016-10-19 18:28 ` Mark Rutland
2016-10-20 10:29 ` Heiko Carstens
2016-10-24 9:49 ` Mark Rutland
2016-10-27 23:13 ` Andy Lutomirski
2016-10-27 23:13 ` Andy Lutomirski
2016-10-28 10:48 ` Mark Rutland
2016-10-24 10:12 ` [PATCH 0/3] THREAD_INFO_IN_TASK prep work for arm64+s390 Mark Rutland
2016-10-24 10:12 ` Mark Rutland
-- strict thread matches above, loose matches on Subject: below --
2016-10-13 11:57 [PATCH 0/3] THREAD_INFO_IN_TASK_STRUCT vs generic preemption code Heiko Carstens
2016-10-13 11:57 ` [PATCH 1/3] sched/core,x86: make struct thread_info arch specific again Heiko Carstens
2016-10-13 11:57 ` Heiko Carstens
2016-10-13 23:41 ` Mark Rutland
2016-10-13 23:51 ` Andy Lutomirski
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=20161020064045.GA29032@gmail.com \
--to=mingo@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=heiko.carstens@de.ibm.com \
--cc=hpa@zytor.com \
--cc=keescook@chromium.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@amacapital.net \
--cc=luto@kernel.org \
--cc=mark.rutland@arm.com \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).