From: Hannes Reinecke Date: Wed, 10 Jul 2013 22:41:15 +0000 (+0100) Subject: dm mpath: fix ioctl deadlock when no paths X-Git-Tag: v3.11-rc1~20^2~12 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6c182cd88d179cbbd06f4f8a8a19b6977940753f;p=pandora-kernel.git dm mpath: fix ioctl deadlock when no paths When multipath needs to retry an ioctl the reference to the current live table needs to be dropped. Otherwise a deadlock occurs when all paths are down: - dm_blk_ioctl takes a reference to the current table and spins in multipath_ioctl(). - A new table is being loaded, but upon resume the process hangs in dm_table_destroy() waiting for references to drop to zero. With this patch the reference to the old table is dropped prior to retry, thereby avoiding the deadlock. Signed-off-by: Hannes Reinecke Cc: Mike Snitzer Cc: stable@vger.kernel.org Signed-off-by: Alasdair G Kergon --- Reading git-diff-tree failed