On Wed, Apr 30, 2008 at 5:36 PM, Neil Brown <neilb@xxxxxxx> wrote: > On Tuesday April 29, dan.j.williams@xxxxxxxxx wrote: > > Now that queue flags are no longer atomic (commit: > > 75ad23bc0fcb4f992a5d06982bf0857ab1738e9e) we must protect calls to > > blk_remove_plug with spin_lock(q->queue_lock). > > Can't we just do > > q->queue_lock = &conf->device_lock > > and appropriate places in the various ->run functions? > > It seems to be that we are doing appropriate locking, we just need to > convince queue_flag_set / queue_flag_clear that the correct lock is > locked. > ?? > That's much simpler. Hmm... as an additional cleanup should device_lock then move to mddev_t since it really is a mddev-level lock? There seem to be more than a few places that cast mddev->private just to get conf->device_lock. Then all this lock initialization is centralized. -- Dan -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html