All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tore Anderson <tore@linpro.no>
To: device-mapper development <dm-devel@redhat.com>
Subject: Deadlock on RHEL4 with kpartx/queue_if_no_path - any way out?
Date: Mon, 19 May 2008 11:00:46 +0200	[thread overview]
Message-ID: <483141BE.2010304@linpro.no> (raw)

Hi.  Due to a PEBCAK and wrong paths being removed I've now ended up
in this situation:

$ multipath -ll multimedia
multimedia (3600a0b80002984ae00001da546c27de1)
[size=200 GB][features="1 queue_if_no_path"][hwhandler="0"]
\_ round-robin 0 [enabled]
 \_ #:#:#:#  -    65:16  [failed][faulty]

I readded the paths with 'echo - - - > /sys/class/scsi_host/host*/scan',
but the map does not get healthy - all attempts to reload the map with
the multipath tools ends up in blocking I/O, using dmsetup directly I
only get failures due to the map being busy.

This is how the process list looks:

$ ps axf
  PID TTY      STAT   TIME COMMAND
[...]
11598 ?        SLl    0:01 /sbin/multipathd
12080 ?        S<     0:00 /bin/sh /etc/dev.d/block/multipath.dev block
12087 ?        S<     0:00  \_ /sbin/dmsetup ls -j 253 -m 3 --target multipath --exec /sbin/kpartx -a
12088 ?        D<     0:00      \_ /sbin/kpartx -a /dev/mapper/multimedia
12714 ?        S<     0:00 /bin/sh /etc/dev.d/block/multipath.dev block
12720 ?        S<     0:00  \_ /sbin/multipath -v0 /dev/sdb
12794 ?        S<     0:00 /bin/sh /etc/dev.d/block/multipath.dev block
12800 ?        D<     0:00  \_ /sbin/multipath -v0 /dev/sdc
12831 ?        D      0:00 multipath -v 2
14132 ?        S<     0:00 /bin/sh /etc/dev.d/block/multipath.dev block
14139 ?        S<     0:00  \_ /sbin/dmsetup ls -j 253 -m 3 --target multipath --exec /sbin/kpartx -a
14140 ?        D<     0:00      \_ /sbin/kpartx -a /dev/mapper/multimedia
14219 ?        S<     0:00 /bin/sh /etc/dev.d/block/multipath.dev block
14225 ?        D<     0:00  \_ /sbin/multipath -v0 /dev/sdd
14255 ?        D      0:00 multipath -v 2
15312 ?        D      0:00 multipath /dev/sdd
17032 ?        D      0:00 multipath
 1008 ?        S<     0:00 /bin/sh /etc/dev.d/block/multipath.dev block
 1014 ?        D<     0:00  \_ /sbin/multipath -v0 /dev/sde

...I assume the kpartx process is locking the map so no changes can be
done, but since there's no alive paths and queue_if_no_path is active,
it will never return, and I'm stuck in a deadlock.

Is there any way out of this save a reboot?

Regards,
-- 
Tore Anderson

             reply	other threads:[~2008-05-19  9:00 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-19  9:00 Tore Anderson [this message]
2008-05-19 22:18 ` Deadlock on RHEL4 with kpartx/queue_if_no_path - any wayout? Craig Simpson
2008-05-20 10:48   ` Tore Anderson

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=483141BE.2010304@linpro.no \
    --to=tore@linpro.no \
    --cc=dm-devel@redhat.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.