aboutsummaryrefslogtreecommitdiff
path: root/drivers/ide
diff options
context:
space:
mode:
authorHolger Smolinski <smolinski@de.ibm.com>2007-05-09 02:32:50 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-09 12:30:46 -0700
commit6ad36fe2b451cc85cc7b14f4128286759e217124 (patch)
tree05e6111d39c969ee729309d6bded6bcfe08aa44e /drivers/ide
parent8defab33774a5c33920196a2ee9c0a946d22ba67 (diff)
dm raid1: one kmirrord per mirror
This patch replaces the single instance of kmirrord by one instance per mirror set. This change is required to avoid a deadlock in kmirrord when the persistent dirty log of a mirror itself resides on a mirror. The single instance of kmirrord then issues a sync write to the dirty log in write_bits which gets deferred to kmirrord itself later in the call chain. But kmirrord never does the deferred work because it is still waiting for the sync write_bits. _mirror_sets is removed as it no longer needed, and we always flush the workqueue before destroying it to ensure all work is complete before destroying it. Signed-off-by: Holger Smolinski <smolinski@de.ibm.com> Signed-off-by: Alasdair G Kergon <agk@redhat.com> Cc: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/ide')
0 files changed, 0 insertions, 0 deletions