From: Juan Quintela <quintela@mandrakesoft.com>
To: Ralf Baechle <ralf@linux-mips.org>
Cc: "Maciej W. Rozycki" <macro@ds2.pg.gda.pl>, linux-mips@linux-mips.org
Subject: Re: [patch] R4k cache code synchronization
Date: 10 Jan 2003 14:36:45 +0100 [thread overview]
Message-ID: <m21y3l6s9e.fsf@demo.mitica> (raw)
In-Reply-To: <20030110140326.B7699@linux-mips.org>
>>>>> "ralf" == Ralf Baechle <ralf@linux-mips.org> writes:
ralf> On Fri, Jan 10, 2003 at 01:37:12PM +0100, Maciej W. Rozycki wrote:
>> I can't see any need for flush_cache_l1() and flush_cache_l2(). I'd like
>> to remove them. A single flush_cache_all() seems sufficient for our
>> needs. Any objections?
ralf> The reason for the existance of flush_cache_l1 and flush_cache_l2 is the
ralf> Origin. An empty flush_cache_all() is sufficient on the Origin because
ralf> it's R10000 processor doesn't suffer from cache aliases. During bootup
ralf> we have to flush all caches or the cache coherence logic will send crazy
ralf> exceptions at us. For all other occasions just a flush of the primary
ralf> caches is sufficient which is why there is flush_cache_l1.
ralf> So I think we want to wrap things a bit nicer but basically we have to
ralf> keep those cacheops for the sake of the Origin.
Humm, I thought that there wasn't origins with R4400 processors :)
Anyways, I think that the change is the good direction, at least:
- unsigned int flags -> unsigned long flags
&& under proper #ifdefs
and the mips64 port just now should work only in R4400MC & R4400PC (to me
knowlegge the most unusual ones), and broke in the R4400SC :(
Once talking about caches, why do we _allways_ do the writeback,
indeed if they asked us to do a invalidate?
Something like that?
Later, Juan.
Index: arch/mips64/mm/c-r4k.c
===================================================================
RCS file: /home/cvs/linux/arch/mips64/mm/c-r4k.c,v
retrieving revision 1.1.2.11
diff -u -r1.1.2.11 c-r4k.c
--- arch/mips64/mm/c-r4k.c 8 Jan 2003 14:16:31 -0000 1.1.2.11
+++ arch/mips64/mm/c-r4k.c 9 Jan 2003 23:16:41 -0000
@@ -979,7 +979,7 @@
unsigned long end, a;
if (size >= scache_size) {
- flush_cache_l1();
+ flush_cache_all();
return;
}
@@ -1010,7 +1010,7 @@
a = addr & ~(dc_lsize - 1);
end = (addr + size - 1) & ~(dc_lsize - 1);
while (1) {
- flush_dcache_line(a); /* Hit_Writeback_Inv_D */
+ invalidate_dcache_line(a); /* Hit_Invalidate_D */
if (a == end) break;
a += dc_lsize;
}
@@ -1027,14 +1027,14 @@
unsigned long end, a;
if (size >= scache_size) {
- flush_cache_l1();
+ flush_cache_all();
return;
}
a = addr & ~(sc_lsize - 1);
end = (addr + size - 1) & ~(sc_lsize - 1);
while (1) {
- flush_scache_line(a); /* Hit_Writeback_Inv_SD */
+ invalidate_scache_line(a); /* Hit_Invalidate_SD */
if (a == end) break;
a += sc_lsize;
}
--
In theory, practice and theory are the same, but in practice they
are different -- Larry McVoy
next prev parent reply other threads:[~2003-01-10 13:28 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-01-10 12:37 [patch] R4k cache code synchronization Maciej W. Rozycki
2003-01-10 13:03 ` Ralf Baechle
2003-01-10 13:30 ` Maciej W. Rozycki
2003-01-10 13:36 ` Juan Quintela [this message]
2003-01-10 13:33 ` Juan Quintela
2003-01-10 13:33 ` Maciej W. Rozycki
2003-01-10 13:51 ` Juan Quintela
2003-01-10 14:02 ` Maciej W. Rozycki
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=m21y3l6s9e.fsf@demo.mitica \
--to=quintela@mandrakesoft.com \
--cc=linux-mips@linux-mips.org \
--cc=macro@ds2.pg.gda.pl \
--cc=ralf@linux-mips.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