Re: [RFC PATCH, x86]: Disable CPA cache flush for selfsnoop targets

From: Thomas Gleixner
Date: Mon Jul 15 2019 - 14:41:12 EST


On Mon, 15 Jul 2019, Andi Kleen wrote:
> Uros Bizjak <ubizjak@xxxxxxxxx> writes:
>
> > Recent patch [1] disabled a self-snoop feature on a list of processor
> > models with a known errata, so we are confident that the feature
> > should work on remaining models also for other purposes than to speed
> > up MTRR programming.
>
> MTRR is very different than TLBs.
>
> >From my understanding not flushing with PAT is only safe everywhere when
> the memory is only used for coherent devices (like the Internal GPU on
> Intel CPUs). We don't have any infrastructure to track or enforce
> this unfortunately.

Right, we don't know where the PAT invocation comes from and whether they
are safe to omit flushing the cache. The module load code would be one
obvious candidate.

But unless there is some really worthwhile speedup, e.g. for boot, then
adding some flag to let CPA know about the safe 'no flush' operation might
be not worth it.

Thanks,

tglx