From: Catalin Marinas <catalin.marinas@arm.com>
To: "David S. Miller" <davem@davemloft.net>
Cc: linux-kernel@vger.kernel.org
Subject: Re: 2.6.13-rc3: cache flush missing from somewhere
Date: Mon, 01 Aug 2005 19:37:29 +0100 [thread overview]
Message-ID: <tnxmzo1ld06.fsf@arm.com> (raw)
In-Reply-To: <20050801180119.E14401@flint.arm.linux.org.uk> (Russell King's message of "Mon, 1 Aug 2005 18:01:20 +0100")
Russell King <rmk+lkml@arm.linux.org.uk> wrote:
> On Mon, Aug 01, 2005 at 05:54:33PM +0100, Catalin Marinas wrote:
>> I haven't checked the original patch but it might work (by luck)
>> without the I-cache invalidation (and without stressing it too
>> much). This is because you might do a full mm flush when a process
>> exits and the I-cache would be clean for newly allocated pages (only
>> the D-cache needs flushing). If you don't overload memory, you don't
>> get pages swapped-out/removed and the code in a page for a given
>> process might remain unchanged until the process exits.
>
> Given that it's sometimes going wrong as early as the first process, I
> doubt this is what's happening. The i-cache will be clean at this point
> for the userspace programs.
The I-cache might not be completely clean when executing the first
process since the kernel already ran code from the .init.text section
which is freed.
Anyway, the problem you are seeing, apart from the I-cache flushing,
looks to me like being caused by not flushing the D-cache on the CPU
that actually wrote the page (not the one handling the page
fault). That's why flushing immediately (not lazily) seems to work.
--
Catalin
prev parent reply other threads:[~2005-08-01 18:40 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-07-29 15:13 2.6.13-rc3: cache flush missing from somewhere Russell King
2005-07-30 19:40 ` David S. Miller
2005-07-30 20:08 ` Russell King
2005-07-31 0:09 ` David S. Miller
2005-08-01 12:24 ` Catalin Marinas
2005-08-01 15:35 ` David S. Miller
2005-08-01 16:34 ` Catalin Marinas
2005-08-01 16:40 ` Russell King
2005-08-01 16:54 ` Catalin Marinas
2005-08-01 17:01 ` Russell King
2005-08-01 18:37 ` Catalin Marinas [this message]
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=tnxmzo1ld06.fsf@arm.com \
--to=catalin.marinas@arm.com \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.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