[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [dm-devel] 3.15-rc4: circular locking dependency triggered by dm-multipath



On 05/26/2014 02:29 PM, Hannes Reinecke wrote:
On 05/26/2014 02:20 PM, Bart Van Assche wrote:
On 05/26/14 14:10, Hannes Reinecke wrote:
Mike Snitzer had a patch in his device-mapper tree:

dm mpath: fix lock order inconsistency in multipath_ioctl
(2014-05-14
16:12:17 -0400)

I was sort of hoping that would address this issue.
Can you check?

Hello Hannes,

Is it possible that that patch already got included in v3.15-rc6 and
hence that that patch was included in my test ?

$ git log v3.15-rc5..v3.15-rc6 | grep 'dm mpath: fix lock order
inconsistency in multipath_ioctl'
       dm mpath: fix lock order inconsistency in multipath_ioctl
     dm mpath: fix lock order inconsistency in multipath_ioctl

Could be.

Okay, I'll be cross-checking.

Can you check if this makes lockdep happy?

diff --git a/drivers/md/dm-mpath.c b/drivers/md/dm-mpath.c
index aa009e8..40b3036 100644
--- a/drivers/md/dm-mpath.c
+++ b/drivers/md/dm-mpath.c
@@ -445,11 +445,11 @@ static int queue_if_no_path(struct multipath *m, unsigned
queue_if_no_path,
        else
                m->saved_queue_if_no_path = queue_if_no_path;
        m->queue_if_no_path = queue_if_no_path;
-       if (!m->queue_if_no_path)
-               dm_table_run_md_queue_async(m->ti->table);
-
        spin_unlock_irqrestore(&m->lock, flags);

+       if (!queue_if_no_path)
+               dm_table_run_md_queue_async(m->ti->table);
+
        return 0;
 }

Cheers,

Hannes
--
Dr. Hannes Reinecke		      zSeries & Storage
hare suse de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]