Re: [patch 00/15] x86/tlb: Unexport per-CPU tlbstate

From: Thomas Gleixner
Date: Mon Apr 20 2020 - 16:09:03 EST


Alexandre Chartre <alexandre.chartre@xxxxxxxxxx> writes:
> On 4/20/20 11:20 AM, Christoph Hellwig wrote:
>> Just looking over some exports at the end of the series (and thus
>> ignoring bisection issues):
>>
>> - Is there any good reason to keep __flush_tlb_all inline vs moving it
>> out of line and kill the flush_tlb_local and flush_tlb_global exports.
>> Also there is just a single modular users in SVM, I wonder if there is
>> any way to get rid of that one as well.
>>
>> Also I think cpu_tlbstate itself could be marked static in tlb.c with
>> a few more changes, I wonder if would be worth it?
>>
> For Address Space Isolation (ASI), I was planning on storing the ASI session
> into cpu_tlbstate (https://lkml.org/lkml/2020/2/26/699) as the ASI session
> then provides the TLB flushing information based on the ASI used. In that case,
> I would need cpu_tlbstate to be non-static. Otherwise I can have my own percpu
> asi_session structures, but using cpu_tlbstate seemed more appropriate to me.
> This is opened for discussion; for now, I am waiting for more changes that tglx
> is making, before rebasing ASI.

Even in that case we could restrict the availability to arch/x86/mm/
which would still make it available for ASI.

Thanks,

tglx