Re: [PATCH] x86/irq: do not substract irq_tlb_count from irq_call_count

From: Aaron Lu
Date: Thu Aug 11 2016 - 05:17:44 EST


On 08/11/2016 05:13 PM, Ingo Molnar wrote:
>
> * Aaron Lu <aaron.lu@xxxxxxxxx> wrote:
>
>> This is found by LKP's cyclic performance regression tracking recently
>> with the vm-scalability test suite. I have bisected to commit
>> 0a7ce4b5a632 ("mm/rmap: share the i_mmap_rwsem"). This commit didn't do
>> anything wrong but revealed the irq_call_count problem. IIUC, the commit
>> makes rwc->remap_one in rmap_walk_file concurrent with multiple threads.
>> When remap_one is try_to_unmap_one, then multiple threads could queue
>> flush tlb to the same CPU but only one IPI will be sent.
>
> Note, for some reason the commit ID you used is wrong, the real one is:

Oops, I looked at a test branch where I cherry-picked that commit, sorry.

>
> 3dec0ba0be6a ("mm/rmap: share the i_mmap_rwsem")
>
> I have fixed this in the changelog.

Thanks!