linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sunil Mushran <sunil.mushran@oracle.com>
To: Jan Kucera <xatrix101@gmail.com>
Cc: mfasheh@suse.com, joel.becker@oracle.com,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
	ocfs2-devel@oss.oracle.com
Subject: Re: [Ocfs2-devel] Deadlock in dlmmaster.c
Date: Mon, 04 May 2009 12:30:17 -0700	[thread overview]
Message-ID: <49FF4249.7030907@oracle.com> (raw)
In-Reply-To: <ef67228d0905031333i782ad1efhe532cd555e58b604@mail.gmail.com>

Jan Kucera wrote:
> I've found some possible deadlock in fs/ocfs2/dlm/dlmmaster.c - 
> version 2.6.28 (probably this code is in newer versions too).
> Could someone confirm this? Thank you.
>
>
> fs/ocfs2/dlm/dlmmaster.c
> ==================
>
> function dlm_master_request_handler: (res->spinlock <- dlm->master_lock)
> -----------------------------------
> spin_lock(&res->spinlock); at line 1427
> spin_lock(&dlm->master_lock); at line 1475
>
> function dlm_migrate_request_handler: (dlm->master_lock <- res->spinlock)
> -------------------------------------------------------
> spin_lock(&dlm->master_lock) at line 3036
> spin_lock(&res->spinlock); at line 3039

So this should not happen.

The first condition can only be hit if the resource has no master and is in
the process of being mastered.

The second condition will only be hit if the resource has a master and is
currently being migrated (remastered) from one node to another.

The two appear to be mutually exclusive. But feel free to file a bugzilla
so that I remember to look into it more carefully when I have more time.
http://oss.oracle.com/bugzilla

Thanks
Sunil

      reply	other threads:[~2009-05-04 19:30 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-03 20:33 Deadlock in dlmmaster.c Jan Kucera
2009-05-04 19:30 ` Sunil Mushran [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49FF4249.7030907@oracle.com \
    --to=sunil.mushran@oracle.com \
    --cc=joel.becker@oracle.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mfasheh@suse.com \
    --cc=ocfs2-devel@oss.oracle.com \
    --cc=xatrix101@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).