On Sat, Oct 15, 2016 at 10:12:48PM +0800, [email protected] wrote: > From: z00281421 <[email protected]> > > i think no need to place __free_vmap_area loop in purge_lock; > _free_vmap_area could be non-atomic operations with flushing tlb > but must be done after flush tlb. and the whole__free_vmap_area loops > also could be non-atomic operations. if so we could improve realtime > because the loop times sometimes is larg and spend a few time.
Right, see the previous patch in reply to Joel that drops purge_lock entirely. Instead of your open coded batch counter you probably want to add a cond_resched_lock after the call to __free_vmap_area.

