From: Andrew Morton <akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
To: Linus Torvalds
<torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
Cc: xemul-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org,
containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
dave-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org,
mingo-X9Un+BFzKDI@public.gmane.org,
Alexey Dobriyan
<adobriyan-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: Re: [PATCH 14/38] Remove struct mm_struct::exe_file et al
Date: Sun, 31 May 2009 16:50:26 -0700 [thread overview]
Message-ID: <20090531165026.376a914c.akpm@linux-foundation.org> (raw)
In-Reply-To: <alpine.LFD.2.01.0905311613260.3435-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
On Sun, 31 May 2009 16:15:50 -0700 (PDT) Linus Torvalds <torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org> wrote:
>
>
> On Sun, 31 May 2009, Andrew Morton wrote:
> >
> > What I always find a bit weird is that an MM container is used as the
> > central point for a number of sched obects. But it's logical, given
> > that the never-before-stated definition of a heavyweight process is
> > "thing which share a VM".
>
> It has nothing to do with "heavy-weight process" or anything else.
>
> The thing is, from a scheduling standpoint, one of the primary performance
> concerns in the TLB switch.
>
> And there's a 1:1 relationship between TLB switch and MM container, modulo
> the issue of kernel tasks (and those obviously "borrow" approproate MM
> structs to avoid the switch).
That's all an obscure performance-oriented internal implementation detail.
> So it's not weird at all. It's very direct, and a very straightforward and
> obvious relationship.
It's arbitrary! If we were to gain more performance benefit by
aggregating processes under, say, the fs_struct then that's the way the
kernel would have been implemented.
WARNING: multiple messages have this Message-ID (diff)
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Alexey Dobriyan <adobriyan@gmail.com>,
Matt Helsley <matthltc@us.ibm.com>,
xemul@parallels.com, containers@lists.linux-foundation.org,
linux-kernel@vger.kernel.org, dave@linux.vnet.ibm.com,
mingo@elte.hu
Subject: Re: [PATCH 14/38] Remove struct mm_struct::exe_file et al
Date: Sun, 31 May 2009 16:50:26 -0700 [thread overview]
Message-ID: <20090531165026.376a914c.akpm@linux-foundation.org> (raw)
In-Reply-To: <alpine.LFD.2.01.0905311613260.3435@localhost.localdomain>
On Sun, 31 May 2009 16:15:50 -0700 (PDT) Linus Torvalds <torvalds@linux-foundation.org> wrote:
>
>
> On Sun, 31 May 2009, Andrew Morton wrote:
> >
> > What I always find a bit weird is that an MM container is used as the
> > central point for a number of sched obects. But it's logical, given
> > that the never-before-stated definition of a heavyweight process is
> > "thing which share a VM".
>
> It has nothing to do with "heavy-weight process" or anything else.
>
> The thing is, from a scheduling standpoint, one of the primary performance
> concerns in the TLB switch.
>
> And there's a 1:1 relationship between TLB switch and MM container, modulo
> the issue of kernel tasks (and those obviously "borrow" approproate MM
> structs to avoid the switch).
That's all an obscure performance-oriented internal implementation detail.
> So it's not weird at all. It's very direct, and a very straightforward and
> obvious relationship.
It's arbitrary! If we were to gain more performance benefit by
aggregating processes under, say, the fs_struct then that's the way the
kernel would have been implemented.
next prev parent reply other threads:[~2009-05-31 23:50 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-26 11:36 [PATCH 14/38] Remove struct mm_struct::exe_file et al Matt Helsley
2009-05-26 23:24 ` Andrew Morton
[not found] ` <20090526162415.fb9cefef.akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2009-05-31 21:54 ` Alexey Dobriyan
2009-05-31 21:54 ` Alexey Dobriyan
[not found] ` <20090531215427.GA29534-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-05-31 22:19 ` Andrew Morton
2009-05-31 22:19 ` Andrew Morton
[not found] ` <20090531151953.8f8b14b5.akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2009-05-31 23:15 ` Linus Torvalds
2009-05-31 23:15 ` Linus Torvalds
[not found] ` <alpine.LFD.2.01.0905311613260.3435-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-05-31 23:50 ` Andrew Morton [this message]
2009-05-31 23:50 ` Andrew Morton
[not found] ` <20090531165026.376a914c.akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2009-06-01 0:02 ` Linus Torvalds
2009-06-01 0:02 ` Linus Torvalds
2009-06-03 23:04 ` [PATCH 1/9] exec_path 1/9: introduce ->exec_path and switch /proc/*/exe Alexey Dobriyan
2009-06-03 23:04 ` Alexey Dobriyan
2009-06-03 23:05 ` [PATCH 2/9] exec_path 2/9: switch audit to ->exec_path Alexey Dobriyan
2009-06-03 23:06 ` [PATCH 5/9] exec_path 5/9: make struct spu_context::owner task_struct Alexey Dobriyan
2009-06-03 23:07 ` [PATCH 7/9] exec_path 7/9: switch cell SPU thing to ->exec_path Alexey Dobriyan
2009-06-03 23:07 ` [PATCH 8/9] exec_path 8/9: remove ->exe_file et al Alexey Dobriyan
2009-06-03 23:08 ` [PATCH 9/9] exec_path 9/9: remove VM_EXECUTABLE Alexey Dobriyan
[not found] ` <20090603230810.GJ853-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-06-04 7:24 ` Matt Helsley
2009-06-04 7:24 ` Matt Helsley
2009-06-03 23:36 ` [PATCH 1/9] exec_path 1/9: introduce ->exec_path and switch /proc/*/exe Linus Torvalds
2009-06-04 7:55 ` Matt Helsley
2009-06-04 8:10 ` Matt Helsley
[not found] ` <20090604075532.GU9285-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-06-04 8:10 ` Matt Helsley
2009-06-04 15:07 ` Linus Torvalds
2009-06-04 15:07 ` Linus Torvalds
2009-06-04 21:30 ` Matt Helsley
[not found] ` <20090604213033.GZ9285-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-06-04 22:42 ` Alexey Dobriyan
2009-06-04 22:42 ` Alexey Dobriyan
2009-06-05 3:49 ` Matt Helsley
[not found] ` <20090604224239.GA10666-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-06-05 3:49 ` Matt Helsley
[not found] ` <alpine.LFD.2.01.0906040803410.4880-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-06-04 21:30 ` Matt Helsley
[not found] ` <20090603230422.GB853-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-06-03 23:05 ` [PATCH 2/9] exec_path 2/9: switch audit to ->exec_path Alexey Dobriyan
2009-06-03 23:05 ` [PATCH 3/9] exec_path 3/9: switch TOMOYO " Alexey Dobriyan
2009-06-03 23:05 ` Alexey Dobriyan
2009-06-03 23:06 ` [PATCH 4/9] exec_path 4/9: switch oprofile " Alexey Dobriyan
2009-06-03 23:06 ` Alexey Dobriyan
2009-06-03 23:06 ` [PATCH 5/9] exec_path 5/9: make struct spu_context::owner task_struct Alexey Dobriyan
2009-06-03 23:06 ` [PATCH 6/9] exec_path 6/9: add struct spu::tsk Alexey Dobriyan
2009-06-03 23:06 ` Alexey Dobriyan
2009-06-03 23:07 ` [PATCH 7/9] exec_path 7/9: switch cell SPU thing to ->exec_path Alexey Dobriyan
2009-06-03 23:07 ` [PATCH 8/9] exec_path 8/9: remove ->exe_file et al Alexey Dobriyan
2009-06-03 23:08 ` [PATCH 9/9] exec_path 9/9: remove VM_EXECUTABLE Alexey Dobriyan
2009-06-03 23:36 ` [PATCH 1/9] exec_path 1/9: introduce ->exec_path and switch /proc/*/exe Linus Torvalds
2009-06-04 7:55 ` Matt Helsley
2009-06-05 10:45 ` Christoph Hellwig
2009-06-06 7:22 ` Al Viro
2009-06-05 10:45 ` Christoph Hellwig
[not found] ` <20090605104517.GA11713-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2009-06-05 15:10 ` Linus Torvalds
2009-06-05 15:10 ` Linus Torvalds
2009-06-05 15:41 ` Alexey Dobriyan
2009-06-05 15:49 ` Linus Torvalds
2009-06-05 16:09 ` Alexey Dobriyan
[not found] ` <20090605160943.GA5262-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-06-05 16:48 ` Linus Torvalds
2009-06-05 16:48 ` Linus Torvalds
2009-06-05 17:46 ` Alexey Dobriyan
[not found] ` <alpine.LFD.2.01.0906050942450.6847-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-06-05 17:46 ` Alexey Dobriyan
[not found] ` <alpine.LFD.2.01.0906050848520.6847-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-06-05 16:09 ` Alexey Dobriyan
[not found] ` <20090605154147.GA16766-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-06-05 15:49 ` Linus Torvalds
[not found] ` <alpine.LFD.2.01.0906050808551.6847-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-06-05 15:41 ` Alexey Dobriyan
2009-06-06 7:22 ` Al Viro
2009-06-15 22:10 ` Alexey Dobriyan
[not found] ` <20090606072244.GA13497-3bDd1+5oDREiFSDQTTA3OLVCufUGDwFn@public.gmane.org>
2009-06-15 22:10 ` Alexey Dobriyan
2009-06-01 17:30 ` [PATCH 14/38] Remove struct mm_struct::exe_file et al Matt Helsley
2009-06-01 17:30 ` Matt Helsley
[not found] ` <20090526113618.GJ28083-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-05-26 23:24 ` Andrew Morton
-- strict thread matches above, loose matches on Subject: below --
2009-05-26 11:36 Matt Helsley
2009-05-22 4:54 [PATCH 01/38] cred: #include init.h in cred.h Alexey Dobriyan
2009-05-22 4:55 ` [PATCH 14/38] Remove struct mm_struct::exe_file et al Alexey Dobriyan
[not found] ` <1242968132-1044-1-git-send-email-adobriyan-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2009-05-22 4:55 ` Alexey Dobriyan
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=20090531165026.376a914c.akpm@linux-foundation.org \
--to=akpm-de/tnxtf+jlsfhdxvbkv3wd2fqjk+8+b@public.gmane.org \
--cc=adobriyan-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=dave-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=mingo-X9Un+BFzKDI@public.gmane.org \
--cc=torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=xemul-bzQdu9zFT3WakBO8gow8eQ@public.gmane.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.