Re: [PATCH] x86/irq: do not substract irq_tlb_count from irq_call_count
From: Ingo Molnar
Date: Thu Aug 11 2016 - 05:13:57 EST
* 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:
3dec0ba0be6a ("mm/rmap: share the i_mmap_rwsem")
I have fixed this in the changelog.
Thanks,
Ingo