All of lore.kernel.org
 help / color / mirror / Atom feed
From: Edwin Török <edvin.torok@citrix.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [PATCH] gfs2: Fix missed wakeups in find_insert_glock
Date: Mon, 11 Mar 2019 15:06:32 +0000	[thread overview]
Message-ID: <975e12ec-8f41-eaaf-a4e2-1cd99aa9a906@citrix.com> (raw)
In-Reply-To: <CAHc6FU78iH-gEs8LJbb3Vq2vWtJWnsp9GxYy2wNxsR8Syi0d3g@mail.gmail.com>

On 07/03/2019 16:23, Andreas Gruenbacher wrote:
> Hi Edwin,
> 
> On Thu, 7 Mar 2019 at 16:55, Edwin T?r?k <edvin.torok@citrix.com> wrote:
>> On 06/03/2019 16:14, Andreas Gruenbacher wrote:
>>> Mark Syms has reported seeing tasks that are stuck waiting in
>>> find_insert_glock.  It turns out that struct lm_lockname contains four padding
>>> bytes on 64-bit architectures that function glock_waitqueue doesn't skip when
>>> hashing the glock name.  As a result, we can end up waking up the wrong
>>> waitqueue, and the waiting tasks will be stuck.
>>>
>>> Use offsetofend instead of sizeof to get the struct size without the padding.
>>>
>>> Reported-by: Mark Syms <mark.syms@citrix.com>
>>> Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
>>
>> Thank you for your patch, initial testing looks promising when replacing the schedule_timeout patch with this one (no deadlocks/stuck tasks found so far).
>> Will let you know when our testing completes.
> 
> okay great, thanks. Hope we can still get this into the 5.1 kernel.


Testing of this patch itself looked good (no new issues), however GFS2 still deadlocks on 4.19 even with this patch, see:
https://www.redhat.com/archives/cluster-devel/2019-March/msg00000.html
[the iomap deadlocks seems to be more rare now though]

Thanks,
--Edwin



      reply	other threads:[~2019-03-11 15:06 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-06 16:14 [Cluster-devel] [PATCH] gfs2: Fix missed wakeups in find_insert_glock Andreas Gruenbacher
2019-03-07 15:54 ` Edwin Török
2019-03-07 16:23   ` Andreas Gruenbacher
2019-03-11 15:06     ` Edwin Török [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=975e12ec-8f41-eaaf-a4e2-1cd99aa9a906@citrix.com \
    --to=edvin.torok@citrix.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.