From: Peter Zijlstra <peterz@infradead.org>
To: Matthew Garrett <mjg@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>,
Arjan van de Ven <arjan@linux.intel.com>,
Lennart Poettering <mzxreary@0pointer.de>,
Andrew Morton <akpm@linux-foundation.org>,
"Kirill A. Shutemov" <kirill@shutemov.name>,
Paul Menage <menage@google.com>, Li Zefan <lizf@cn.fujitsu.com>,
containers@lists.linux-foundation.org,
jacob.jun.pan@linux.intel.com, linux-kernel@vger.kernel.org,
Matt Helsley <matthltc@us.ibm.com>,
linux-api@vger.kernel.org, Kay Sievers <kay.sievers@vrfy.org>,
harald@redhat.com, david@fubar.dk, greg@kroah.com
Subject: Re: [PATCH, v10 3/3] cgroups: introduce timer slack controller
Date: Mon, 17 Oct 2011 17:11:00 +0200 [thread overview]
Message-ID: <1318864260.4172.54.camel@twins> (raw)
In-Reply-To: <20111017145952.GB15769@srcf.ucam.org>
On Mon, 2011-10-17 at 15:59 +0100, Matthew Garrett wrote:
> On Mon, Oct 17, 2011 at 04:49:29PM +0200, Peter Zijlstra wrote:
> > On Mon, 2011-10-17 at 15:40 +0100, Matthew Garrett wrote:
> > > On Mon, Oct 17, 2011 at 04:28:27PM +0200, Peter Zijlstra wrote:
> > > > An XDamage and repaint from the X client, after which your copy will
> > > > complete and you get what you asked for?
> > >
> > > An XDamage and then an asynchronous RPC call to the remote server to
> > > identify the contents of the next frame before drawing them, plus some
> > > sort of new synchronisation mechanism for blocking the X query until
> > > that point?
> >
> > Why would this be a problem?
> >
> > I mean, why would getting a copy of an otherwise invisible surface be a
> > performance sensitive path? If the compositor needs the surface it would
> > make it visible and send the XDamage once and keep it visible henceforth
> > until the time it again becomes invisible, at which point you have to
> > stop updates again.
>
> I'm not saying that it's a problem. I'm saying that your approach
> changes behavioural semantics in a way that may violate application
> expectations just as surely as changing the timer behaviour does.
> There's no free approach.
I'm not saying its free, I'm saying its a much better approach since it
gets rid of the entire problem instead of papering over the worst of it.
> > > Timers are a resource. People want to manage that resource. cgroups are
> > > a convenient mechanism for managing resources.
> >
> > Yes, and a ball is round (unless you're a USA-ian, in which case they're
> > ovoid), what's your point?
>
> If there's no reason to want to manage that resource, why do we support
> timer slack at all?
So that individual applications can provide their timing tolerance and
the OS can group these timers in order to optimize idle time or whatnot.
Indiscriminately changing the slack for a whole group of otherwise
unrelated applications will violate their timing tolerances and break
them in non-obvious ways.
What I'm saying is that its much better to attack the primary source of
evil in a manner that is unforgiving instead of trying to avoid the
worst excesses and cause non-obvious breakage.
For a while people were promoting the idea that its good to be lenient
in what you accept as input and strict in what you send out. I think
people are starting to realize that was a horrid mistake since now
they're getting utter crap and people don't even know what right is
anymore.
next prev parent reply other threads:[~2011-10-17 15:11 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-11 16:15 [PATCH, v10 0/3] Introduce timer slack controller Kirill A. Shutemov
2011-10-11 16:15 ` [PATCH, v10 1/3] hrtimer: introduce effective timer slack Kirill A. Shutemov
2011-10-11 16:15 ` [PATCH, v10 2/3] hrtimer: implement PR_GET_EFFECTIVE_TIMERSLACK Kirill A. Shutemov
2011-10-11 16:15 ` [PATCH, v10 3/3] cgroups: introduce timer slack controller Kirill A. Shutemov
[not found] ` <1318349729-3108-4-git-send-email-kirill-oKw7cIdHH8eLwutG50LtGA@public.gmane.org>
2011-10-11 16:49 ` Kirill A. Shutemov
2011-10-14 22:43 ` Andrew Morton
[not found] ` <20111014154348.ae6267aa.akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2011-10-14 23:34 ` Kirill A. Shutemov
2011-10-15 11:20 ` Lennart Poettering
2011-10-15 19:11 ` Peter Zijlstra
2011-10-17 1:39 ` Lennart Poettering
[not found] ` <20111017013921.GA30035-kS5D54t9nk0aINubkmmoJbNAH6kLmebB@public.gmane.org>
2011-10-17 3:22 ` Matthew Garrett
[not found] ` <20111017032232.GA4816-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2011-10-17 5:21 ` Arjan van de Ven
[not found] ` <4E9BBB6D.4050004-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2011-10-17 7:36 ` Peter Zijlstra
2011-10-17 9:38 ` Thomas Gleixner
2011-10-17 12:46 ` Matthew Garrett
[not found] ` <20111017124647.GA12838-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2011-10-17 13:06 ` Peter Zijlstra
2011-10-17 14:11 ` Matthew Garrett
[not found] ` <20111017141147.GA14581-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2011-10-17 14:28 ` Peter Zijlstra
2011-10-17 14:35 ` Arjan van de Ven
[not found] ` <4E9C3D39.9020109-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2011-10-17 14:45 ` Peter Zijlstra
2011-10-17 14:40 ` Matthew Garrett
2011-10-17 14:49 ` Peter Zijlstra
2011-10-17 14:59 ` Matthew Garrett
2011-10-17 15:11 ` Peter Zijlstra [this message]
2011-10-17 15:19 ` Matthew Garrett
[not found] ` <20111017151920.GA16664-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2011-10-17 15:21 ` Peter Zijlstra
2011-10-17 15:31 ` Matthew Garrett
[not found] ` <20111017153142.GA17047-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2011-10-17 16:36 ` Peter Zijlstra
2011-10-17 16:49 ` Matthew Garrett
2011-10-17 15:48 ` Alan Cox
[not found] ` <20111017164839.3887ee3e-qBU/x9rampVanCEyBjwyrvXRex20P6io@public.gmane.org>
2011-10-17 16:33 ` Peter Zijlstra
2011-10-17 15:18 ` Peter Zijlstra
2011-10-17 7:34 ` Peter Zijlstra
2011-10-17 13:55 ` Lennart Poettering
2011-10-17 7:28 ` Peter Zijlstra
2011-10-17 19:46 ` Valdis.Kletnieks-PjAqaU27lzQ
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=1318864260.4172.54.camel@twins \
--to=peterz@infradead.org \
--cc=akpm@linux-foundation.org \
--cc=arjan@linux.intel.com \
--cc=containers@lists.linux-foundation.org \
--cc=david@fubar.dk \
--cc=greg@kroah.com \
--cc=harald@redhat.com \
--cc=jacob.jun.pan@linux.intel.com \
--cc=kay.sievers@vrfy.org \
--cc=kirill@shutemov.name \
--cc=linux-api@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lizf@cn.fujitsu.com \
--cc=matthltc@us.ibm.com \
--cc=menage@google.com \
--cc=mjg@redhat.com \
--cc=mzxreary@0pointer.de \
--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).