On Tue, Aug 09, 2022 at 07:02:17PM +0000, Liam Howlett wrote: > > > > do we need to hold on to the lock while we loop through the pages here? > > I think we do? Holding this lock will ensure the pages don't go away, I > believe (looking at mm/rmap.c comments on locking at the top)? > > In any case, this function is called from print_binder_proc_stats() > which looks to be a debugfs/debugging call so I thought safer would be > better than faster and with a potential race. The pages are protected by alloc->mutex, so you could immediately release the mmap lock after binder_alloc_get_vma() call. I agree this is a debugging call so it would be nice to reduce contention.