On Thu Jan 28 2010 at 21:55:53 +0000, Mindaugas Rasiukevicius wrote: > Hello, > > Unless anyone objects, I would like to change struct uvm_object::vmobjlock to > be dynamically allocated with mutex_obj_alloc(). It allows us to: 1) share > the lock among objects by holding a reference 2) avoid false-sharing on > locks. > Note that struct vnode::v_interlock becomes a pointer, which means a chunk of > mechanical changes.
1) can you give an example of where this is useful? (i'm not saying it isn't, i just don't like thinking ;) 2) really? looks like for example for vnodes the next 64 bytes starting from the interlock (on i386) require taking the interlock anyway.