[Top] [All Lists]

Re: Broadcom Swarm support

Subject: Re: Broadcom Swarm support
From: Atsushi Nemoto <>
Date: Sun, 28 Jun 2009 01:09:06 +0900 (JST)
In-reply-to: <>
Original-recipient: rfc822;
References: <> <> <>
On Sat, 27 Jun 2009 16:48:11 +0100, Ralf Baechle <> wrote:
> On Sat, Jun 27, 2009 at 10:59:33PM +0900, Atsushi Nemoto wrote:
> > A bit off-topic question.  The update_mmu_cache (or __update_cache)
> > itself does not flush icache.  When icache is invalidated (especially
> > VIPT case) ?
> Not off-topic at all in this thread.
> The I-cache for page just being loaded is clean so no flushing needed.  It
> is clean because when the page has been unmapped it was flushed or because
> the CPU switched to a fresh ASID.

Then, flush_cache_range or flush_cache_page should be called then the
page was unmmapped, right?  How about flush_cache_mm?  It does not
flush icache currently.

And how about kernel __init code pages?  These pages are just freed on
free_initmem.  Also how about code pages used by a module which is to
be unloaded from kernel?

> The reason for this bug is that when data is being shoveled around by the
> processor (as opposed to DMA) as on PIO block devices it'll end up sitting
> in the D-cache so I-cache refills will grab stale data from S-cache or
> memory.

Yes, I suppose so on this swarm case, but I'm just thinking of other
case breaking icache coherency...

Atsushi Nemoto

<Prev in Thread] Current Thread [Next in Thread>