On Thu, 19 Apr 2012, Jun'ichi Nomura wrote: > Hello Mikulas, > > On 04/19/12 12:03, Mikulas Patocka wrote: > > http://people.redhat.com/mpatocka/patches/kernel/dm-lock-optimization/ > > > > The patches remove cache-line bouncing from device mapper when multiple > > processors submit requests simultaneously. > > I think the idea of optimization is nice. > > >From a quick look, however, I have some comments: > > dm-optimize-no-irqsave-map-lock.patch: > - dm_get_live_table() is called from request_fn, > that can be called from in_interrupt context. > So the added BUG_ON will be triggered. > > dm-optimize-percpu-io-lock.patch: > - The following existing mechanisms could be used: > * include/linux/rcupdate.h > * include/linux/lglock.h > (or extended if necessary). > > dm-optimize-get_live_table_fast.patch: > - dm_lld_busy() can (theoretically, if dm-mpath is stacked) > be called from in_interrupt context and trigger the > BUG_ON. > > -- > Jun'ichi Nomura, NEC Corporation Hi I created new patches that use rcu instead of map_lock, so they address the issues you mentioned. Get the new patches here: http://people.redhat.com/mpatocka/patches/kernel/dm-lock-optimization/ performance with new patches: no patch: 69.3 patch 1: 54.0 patch 1,2: 44.2 patch 1,2,3: 39.8 patch 1,2,3,4: 32.7 Mikulas -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel