> On Feb 7, 2019, at 2:53 PM, Linus Torvalds <torva...@linux-foundation.org> 
> wrote:
> 
>> On Thu, Feb 7, 2019 at 1:24 PM Andy Lutomirski <l...@amacapital.net> wrote:
>> 
>> How bad would it be to set CR0.CD while fiddling with the page tables rather 
>> than masking the address?
> 
> I would suggest against it. When you disable caching, things don't
> just go "slightly slower". Everything comes to a screeching halt, with
> instruction fetch etc becoming a serious problem.
> 
> So disabling caching for a few instructions in a very simple asm
> snippet might be reasonable (particularly since you could pre-fetch
> the cache and just rely on CR0.CD not fetching *new* lines). But doing
> it in C code that might have things like tracing enabled etc? I'd be
> very very leery.
> 
> 

In principle, it’s just the code that walks the page tables and changes the 
mode.  But we could get a perf NMI and take who knows how long to process it if 
caching is off.

Reply via email to