From: "Bryan O'Donoghue" <pure.logic@nexus-software.ie>
To: Ingo Molnar <mingo@kernel.org>
Cc: tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com,
x86@kernel.org, linux-kernel@vger.kernel.org,
pure.logic@nexus-software.ie
Subject: Re: [PATCH] x86: Quark: Switch of CR4.PGE TLB flush use CR3 instead
Date: Wed, 24 Sep 2014 11:15:43 +0100 [thread overview]
Message-ID: <542299CF.1040502@nexus-software.ie> (raw)
In-Reply-To: <20140924071221.GB990@gmail.com>
On 24/09/14 08:12, Ingo Molnar wrote:
>
> * Bryan O'Donoghue <pure.logic@nexus-software.ie> wrote:
>
>> Quark x1000 advertises PGE via the standard CPUID method
>> PGE bits exist in Quark X1000's PTEs. In order to flush
>> an individual PTE it is necessary to reload CR3 irrespective
>> of the PTE.PGE bit.
>>
>> See Quark Core_DevMan_001.pdf section 6.4.11
>>
> How was this bug found?
>
> I'm wondering, how was Linux ever booted on an Intel Quark CPU
> successfully if PGE does not work as advertised? Getting TLB
> flushes wrong is a surefire way to crash the kernel. Was any
> related instability observed?
>
> Thanks,
>
> Ingo
Hi Ingo.
Resending this email...
The received wisdom from the silicon people prior to launch meant it was
never a problem for the Quark/Galileo BSP.
In the reference BSP code for Galileo, which I was involved in making,
this fix is already in place. So pretty much everybody running Linux on
Quark is doing it with the modified 3.8.7 kernel shipping with the
Galileo BSP.
So far there's no related instability - since we've never really run any
torture tests with the wrong TLB flush method in-place.
To get properly Quark X1000 support out-of-the-box in Vanilla Linux
though the TLB flush will need to change.
Best,
Bryan
next parent reply other threads:[~2014-09-24 10:15 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1411514784-14885-1-git-send-email-pure.logic@nexus-software.ie>
[not found] ` <20140924071221.GB990@gmail.com>
2014-09-24 10:15 ` Bryan O'Donoghue [this message]
2014-09-24 15:01 ` [tip:x86/platform] x86/intel/quark: Switch off CR4.PGE so TLB flush uses CR3 instead tip-bot for Bryan O'Donoghue
2014-09-24 15:52 ` H. Peter Anvin
2014-09-24 15:58 ` Bryan O'Donoghue
2014-09-24 16:07 ` Bryan O'Donoghue
2014-09-24 18:42 ` H. Peter Anvin
2014-09-24 18:43 ` H. Peter Anvin
2014-09-24 20:22 ` Bryan O'Donoghue
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=542299CF.1040502@nexus-software.ie \
--to=pure.logic@nexus-software.ie \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=x86@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