From: "Michael S. Zick" <mszick@wolfbutter.com>
To: parisc-linux@lists.parisc-linux.org
Subject: Re: [id]cache meaning? [Was: [parisc-linux] 2.6.10-rc1-pa11 profile data]
Date: Sun, 28 Nov 2004 19:14:14 -0600 [thread overview]
Message-ID: <200411281914.14917.mszick@wolfbutter.com> (raw)
In-Reply-To: <20041128211303.GP29035@parcelfarce.linux.theplanet.co.uk>
On Sun November 28 2004 15:13, Matthew Wilcox wrote:
> On Sun, Nov 28, 2004 at 09:01:42PM +0000, Joel Soete wrote:
> >
> > include/asm-parisc/cacheflush.h:
> > [...]
> > #define flush_icache_page(vma,page) do {
> > flush_kernel_dcache_page(page_address(page));
> > flush_kernel_icache_page(page_address(page)); } while (0)
> > [...]
>
> I see why this confuses you. PA-RISC has writeback data caches that
> are non-coherent with the instruction cache. So it's not enough to
> just flush the icache; if the page has been modified, we need to force
> the data in the dcache back to ram, then remove any existing cache for
> instructions in that page. Then instruction accesses to that page will
> fetch the correct data from memory and everything will work.
>
Matt, Joel,
Here is a, perhaps dumb, question from a non-parisc source...
I note Matt's statement: "...then remove any existing cache for
instructions in that page."
Which sounds very reasonable.
Question:
Is the:
> > flush_kernel_icache_page(page_address(page));
(or the hardware that receives the command)
smart enough to just mark the page 'invalid' or is it
actually an 'absolute update external storage'?
I ask because both flush commands are written the
same, BUT...
The first should be an 'absolute update external
storage'.
The second should be either just a 'mark
invalid' or 'conditional update external storage'.
Mike
_______________________________________________
parisc-linux mailing list
parisc-linux@lists.parisc-linux.org
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux
next prev parent reply other threads:[~2004-11-29 1:14 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-11 7:54 [parisc-linux] 2.6.10-rc1-pa11 profile data Grant Grundler
2004-11-11 8:11 ` Randolph Chung
2004-11-11 17:39 ` Carlos O'Donell
2004-11-11 17:42 ` Randolph Chung
2004-11-11 17:50 ` Matthew Wilcox
2004-11-11 17:59 ` Randolph Chung
2004-11-11 18:36 ` Grant Grundler
2004-11-11 18:23 ` Joel Soete
2004-11-11 18:51 ` Randolph Chung
2004-11-26 16:59 ` flush_kernel_[di]cache_page question? [WAS: " Joel Soete
2004-11-26 17:13 ` Randolph Chung
2004-11-26 19:02 ` Grant Grundler
2004-11-28 21:01 ` [id]cache meaning? [Was: [parisc-linux] 2.6.10-rc1-pa11 profile data] Joel Soete
2004-11-28 21:13 ` Matthew Wilcox
2004-11-29 1:14 ` Michael S. Zick [this message]
2004-11-29 2:00 ` Matthew Wilcox
2004-12-01 17:44 ` More questions " Joel Soete
2004-12-01 17:56 ` Matthew Wilcox
2004-12-01 18:33 ` Joel Soete
2004-12-03 10:24 ` Joel Soete
2004-12-03 15:41 ` Randolph Chung
2004-12-07 14:42 ` Joel Soete
2004-12-03 15:00 ` *lcul and memory granularity question[Was: " Joel Soete
2004-12-03 15:13 ` Matthew Wilcox
2004-11-12 5:29 ` [parisc-linux] 2.6.10-rc1-pa11 profile data Grant Grundler
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=200411281914.14917.mszick@wolfbutter.com \
--to=mszick@wolfbutter.com \
--cc=parisc-linux@lists.parisc-linux.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