[PATCH] device-mapper multipath: Fix pg initialisation races
authorAlasdair G Kergon <agk@redhat.com>
Tue, 12 Jul 2005 22:53:04 +0000 (15:53 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 12 Jul 2005 23:19:11 +0000 (16:19 -0700)
commitc3cd4f6b275da0f594797b73f721a4185335478f
treef7a3f0945993b02bb94fb770f2be4b01260b3ead
parent436d41087d047b61f8ab0604dc74fff3240a8933
[PATCH] device-mapper multipath: Fix pg initialisation races

Prevent more than one priority group initialisation function from being
outstanding at once.  Otherwise the completion functions interfere with each
other.  Also, reloading the table could reference a freed pointer.

Only reset queue_io in pg_init_complete if another pg_init isn't required.
Skip process_queued_ios if the queue is empty so that we only trigger a
pg_init if there's I/O.

Signed-off-by: Lars Marowsky-Bree <lmb@suse.de>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/md/dm-mpath.c