Re: [PATCH v5 6/7] x86/tlb: optimizing flush_tlb_mm

From: Alex Shi
Date: Tue May 15 2012 - 11:01:41 EST


On 05/15/2012 10:57 PM, Peter Zijlstra wrote:

> On Tue, 2012-05-15 at 16:36 +0200, Peter Zijlstra wrote:
>> On Tue, 2012-05-15 at 21:24 +0800, Alex Shi wrote:
>>
>>> Sorry. I don't understand what's the comments Peter's made days ago. I should ask for more details originally.
>>>
>>> So, Peter, the correct change should like following, am I right?
>>>
>>> -#define tlb_flush(tlb) flush_tlb_mm((tlb)->mm)
>>> +#define tlb_flush(tlb, start, end) __flush_tlb_range((tlb)->mm, start, end)
>>
>> No.. the correct change is to do range tracking like the other archs
>> that support flush_tlb_range() do.
>>
>> You do not modify the tlb interface.
>>
>> Again, see: http://marc.info/?l=linux-arch&m=129952026504268&w=2


this code is for multiple architecture, but x86 still need implement
'flush tlb range' with 'invlpg'.

>
> Just to be _very_ clear, you do not modify:
>
> mm/memory.c | 9 ++--
> kernel/fork.c | 2 +-
> fs/proc/task_mmu.c | 2 +-
>


Thanks a lot. I see.

> As it stands your patch breaks compilation on a whole bunch of
> architectures.
>
> If you touch the TLB interface, you get to touch _ALL_ architectures.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/