From: Mike Snitzer <snitzer@redhat.com>
To: device-mapper development <dm-devel@redhat.com>
Subject: Re: dm multipath kernel driver version too old - 2.6.32
Date: Fri, 1 Jan 2010 19:24:20 -0500 [thread overview]
Message-ID: <20100102002420.GA25814@redhat.com> (raw)
In-Reply-To: <1262246366.8333.13.camel@jaspav.ssiservices.biz>
On Thu, Dec 31 2009 at 2:59am -0500,
John A. Sullivan III <jsullivan@opensourcedevel.com> wrote:
> Hello, all. We are attempting to upgrade our kernel on our VServer
> hosts from 2.6.28 to 2.6.32.1. After some initial grief, we thought we
> were successful until multipath kicked in and we received an error
> message:
>
> DM multipath kernel driver version too old
>
> In the RAID and LVM section of our kernel configuration, we have enabled
> Multipath I/O support. We have then created modules for Multipath
> target and both I/O Path Selectors (in-flight I/Os and service time).
>
> We are running fully patched CentOS 5.4. What have we done wrong?
> Thanks - John
Linux >= 2.6.31 has a DM multipath target version that was bumped to >=
1.1.0 (for request-based multipath et al).
The device-mapper-multipath in 5.4 has:
multipath/main.c: if (dm_prereq(DEFAULT_TARGET, 1, 0, 3))
But 5.4's dm_prereq() is too simplistic to handle the higher DM target
version numbers that Linux >= 2.6.31 has for the DM multipath target.
Upstream multipath-tools can handle the newer DM target versions
properly. 5.4's device-mapper-multipath-tools can be patched with
something like the following (note this is white-space damaged, but you
get the idea):
@@ -107,10 +107,10 @@ dm_prereq (char * str, int x, int y, int z)
if (!strncmp(str, target->name, strlen(str))) {
r--;
-
- if (target->version[0] >= x &&
- target->version[1] >= y &&
- target->version[2] >= z)
+
+ if ((target->version[0] > x) ||
+ ((target->version[0] == x) && (target->version[1] > y)) ||
+ ((target->version[0] == x) && (target->version[1] == y) && (target->version[2] >= z)))
r--;
break;
But again: upstream multipath-tools already has a nicer fix.
next prev parent reply other threads:[~2010-01-02 0:24 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-31 7:59 dm multipath kernel driver version too old - 2.6.32 John A. Sullivan III
2010-01-01 16:00 ` Pasi Kärkkäinen
2010-01-02 0:24 ` Mike Snitzer [this message]
2010-01-02 1:31 ` John A. Sullivan III
2010-01-02 23:25 ` John A. Sullivan III
2010-01-03 0:17 ` John A. Sullivan III
2010-01-03 17:04 ` Pasi Kärkkäinen
2010-01-04 17:59 ` John A. Sullivan III
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=20100102002420.GA25814@redhat.com \
--to=snitzer@redhat.com \
--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.