public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: Arjan van de Ven <arjan@infradead.org>
Cc: Andi Kleen <andi@firstfloor.org>, Frans Pop <elendil@planet.nl>,
	linux-kernel@vger.kernel.org,
	Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: Unable to continue testing of 2.6.25
Date: Mon, 18 Feb 2008 18:11:59 +0100	[thread overview]
Message-ID: <20080218171159.GA24090@basil.nowhere.org> (raw)
In-Reply-To: <20080218085018.05f3190a@laptopd505.fenrus.org>

On Mon, Feb 18, 2008 at 08:50:18AM -0800, Arjan van de Ven wrote:
> On Mon, 18 Feb 2008 13:31:48 +0100
> Andi Kleen <andi@firstfloor.org> wrote:
> 
> > Arjan van de Ven <arjan@infradead.org> writes:
> > >
> > > the initial plan was for a depreciation period. Sadly it was
> > > untenable since the API was changing entirely to fix bugs and add a
> > > really important feature (the ability to clflush the exact range
> > > rather than wbinvd'ing the caches of all cpus in the system), 
> > 
> > Just for the record: I posted full patches to implement clflush
> > support some time ago without changing any exported API. So your
> > claims that changing the API was needed to implement CLFLUSH are not
> > correct.
> 
> yeah of course it is possible to make things "smart" by having hidden state.
> doesn't make it right.

Not sure how you can call global_flush_tlb() "hidden". It was a quite
exposed interface.

Anyways there was also no principle reason in the old interface why
the flush couldn't have been done immediately. The only reason
it wasn't done was that Linus long ago asked for separate
flushing to improve efficiency of large remaps.

> > Also I believe some assumptions behind the new API are faulty (in
> > particular that the caller doesn't fully own the to be changed pages)
> > and make it actually impossible to implement the cache attribute PTE
> > changing operation fully correct according to the Intel x86 manual
> > (which requires temporary unmap)
> 
> the Intel x86 manual explicitly only has a temporary unmap when going from a 
> cached state to a write-combining state. Any other transition does not require
> an unmap. Which makes this not impossible, all a cached->WC transition needs

True, that's a possible workaround for this deficiency of the new API.

> to do is go via an intermediate UC state and the really expensive process from
> the manual is not needed.

Ok then you're proposing to use a even more expensive operation just
to patch this over. I guess that will work as long as we assume
none of the callers cares too much about performance, but trying to describe
it as an improvement is quite a stretch.

-Andi


  reply	other threads:[~2008-02-18 17:12 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-17  9:25 Unable to continue testing of 2.6.25 Frans Pop
2008-02-17 13:16 ` Adrian Bunk
2008-02-17 19:24   ` Tilman Schmidt
2008-02-17 19:44     ` Adrian Bunk
2008-02-17 20:38       ` Paul Jackson
2008-02-17 20:51         ` Arjan van de Ven
2008-02-19 22:41           ` Frans Pop
2008-02-18  2:33     ` David Miller
2008-02-18 11:40       ` Tilman Schmidt
2008-02-18 12:27       ` Andi Kleen
2008-02-19 21:55   ` Frans Pop
2008-02-19 21:59     ` Arjan van de Ven
2008-02-19 22:15     ` Harvey Harrison
2008-02-19 22:19     ` Adrian Bunk
2008-02-19 22:49       ` Frans Pop
2008-02-17 20:46 ` Arjan van de Ven
2008-02-18 12:31   ` Andi Kleen
2008-02-18 16:50     ` Arjan van de Ven
2008-02-18 17:11       ` Andi Kleen [this message]
2008-02-18 17:32         ` Arjan van de Ven
2008-02-18 18:40           ` Alan Cox
2008-02-18 18:52             ` Arjan van de Ven
2008-02-18 20:15               ` Alan Cox
2008-02-18 18:52           ` Andi Kleen
2008-02-18 18:32             ` Arjan van de Ven
2008-02-18 19:18             ` Ingo Molnar
2008-02-19  9:35               ` Andi Kleen
2008-02-18 18:53           ` Roland Dreier
2008-02-18 19:07             ` Arjan van de Ven
2008-02-18 19:18               ` Roland Dreier
2008-02-19 19:42                 ` Siddha, Suresh B

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=20080218171159.GA24090@basil.nowhere.org \
    --to=andi@firstfloor.org \
    --cc=arjan@infradead.org \
    --cc=elendil@planet.nl \
    --cc=linux-kernel@vger.kernel.org \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox