On Mon 26-03-18 15:19:11, Michal Hocko wrote: > On Mon 26-03-18 19:18:33, Tetsuo Handa wrote: > > Currently, print_lock() is printing hlock->acquire_ip field in both > > "[<%px>]" and "%pS" format. But "[<%px>]" is little useful nowadays, for > > we use scripts/faddr2line which receives "%pS" for finding the location > > in the source code. > > > > Since "struct lockdep_map" is embedded into lock objects, we can know > > which instance of a lock object is acquired using hlock->instance field. > > This will help finding which threads are causing a lock contention when > > e.g. the OOM reaper failed to acquire an OOM victim's mmap_sem for read. > > How? All I can see is that we can match which instances are the same. > This would be an interesting thing to know AFAICS because you can tell > different instances of lock apart. So the patch makes some sense to me, > I am just not sure about changelog. Also, are you sure that %px is appropriate? Can this be abused to leak the kernel pointer and infere other useful data from it? %p should be sufficient to tell different lock instances even with the hashed addresses. -- Michal Hocko SUSE Labs