* [linux-lvm] LVM2 tools<-->library<-->driver compatibility
@ 2006-05-15 18:02 Joe Harvell
2006-05-16 18:46 ` Joe Harvell
0 siblings, 1 reply; 4+ messages in thread
From: Joe Harvell @ 2006-05-15 18:02 UTC (permalink / raw)
To: linux-lvm
I am installing Gentoo Linux on my machine and I'm running into LVM
problems. The installer CD is 2.6 kernel based, but I am installing a
2.4 kernel based system. Gentoo has an install profile for this to
prevent programs and libraries that have a dependency on 2.6 kernel
headers from being installed when a 2.4 profile is being used.
As part of the install process, I created an LVM2 volume group
containing LVs for /, /usr, /var, /opt, and /home. I created
filesystems on these LVs and performed the installation no problem. I
also configured and compiled the kernel, which is a 2.4.32 based kernel
with LVM2 backported into it by the Gentoo developer team.
I created the initrd which is based on an initrd I created myself and
have been using successfully on 2.4 and 2.6 based kernels. It contains
the LVM tools and libraries, along with disk drivers and the
device-mapper driver.
When I run vgscan, it finds the volume group no problem. However, when
I run 'vgchange -ay <vgname>', I see three problems.
1. There are entries in /dev/mapper/<vgname>-<lvname>, but no symlinks
in the form /dev/<vgname>/<lvname> --> /dev/mapper/<vgname>/<lvname>. I
run 'lvm vgmknodes' and it remedies this.
2. I see five complaints from 'vgchange -ay <vgname>' (one for each LV)
as follows:
on stderr: device-mapper: table ioctl failed: Invalid argument
on console (from dm-mod driver): device-mapper: one of name or uuid must
be supplied, cmd (12)
I ran vgchange under strace and here is the following snippet:
open("/dev/mapper/control", O_RDWR|O_LARGEFILE) = 9
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
mlockall(MCL_CURRENT|MCL_FUTURE) = 0
brk(0x8936000) = 0x8936000
brk(0x8b1e000) = 0x8b1e000
getpriority(PRIO_PROCESS, 0) = 20
setpriority(PRIO_PROCESS, 0, -18) = 0
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
address)
stat64("/dev/ide/host0/bus0/target0/lun0/part10", {st_mode=S_IFBLK|0600,
st_rdev=makedev(3, 10), ...}) = 0
stat64("/dev/ide/host0/bus0/target0/lun0/part11", {st_mode=S_IFBLK|0600,
st_rdev=makedev(3, 11), ...}) = 0
stat64("/dev/ide/host0/bus0/target0/lun0/part12", {st_mode=S_IFBLK|0600,
st_rdev=makedev(3, 12), ...}) = 0
ioctl(9, DM_DEV_CREATE, 0x8109958) = 0
ioctl(9, DM_TABLE_STATUS, 0x8109958) = -1 EINVAL (Invalid argument)
write(2, " ", 2) = 2
write(2, "device-mapper: table ioctl faile"..., 51) = 51
write(2, "\n", 1) = 1
3. When I try to mount the filesystem in that LV, it fails. I tried
with different filesystem types and it's the same result. From within
the 2.4 kernel based initrd, it fails. If I reboot into the 2.6 kernel
based installer environment, no problem.
This looks like an incompatibility between the lvm2 and/or device-mapper
library code and the kernel device-mapper code. Here are the versions
installed in the install environment (the one that works):
lvm> version
LVM version: 2.02.05 (2006-04-21)
Library version: 1.02.03 (2006-02-08)
Driver version: 4.4.0
In the initrd, the only thing different would be the driver version.
Later today I will have access to the machine again and I can run the
lvm version command there to see what the driver version is. In the
meantime, I am looking at the kernel sources and I don't see anything
obvious in the driver/md directory.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [linux-lvm] LVM2 tools<-->library<-->driver compatibility
2006-05-15 18:02 [linux-lvm] LVM2 tools<-->library<-->driver compatibility Joe Harvell
@ 2006-05-16 18:46 ` Joe Harvell
2006-05-16 19:58 ` Alasdair G Kergon
0 siblings, 1 reply; 4+ messages in thread
From: Joe Harvell @ 2006-05-16 18:46 UTC (permalink / raw)
To: LVM general discussion and development
A clarification on versions:
The 2006.0 install environment versions (the ones used to create the
VGs/LVs) are below:
LVM: 2.01.09 (2005-04-04)
Library: 1.01.03 (2005-06-13)
Driver: 4.4.0-ioctl
In my installed environment, the tools are newer and the driver is older
(due to the 2.4 kernel):
LVM: 2.02.05 (2006-04-21)
Library: 1.02.03 (2006-02-08)
Driver: 4.1.1-ioctl
How can I determine which combinations should be compatible? What
version of the tools/library do I need to downgrade to in my installed
environment? Is there going to be a compatibility problem with the
metadata created by the 4.4.0 driver since it will be used by the 4.1.1
driver?
Joe Harvell wrote:
> I am installing Gentoo Linux on my machine and I'm running into LVM
> problems. The installer CD is 2.6 kernel based, but I am installing a
> 2.4 kernel based system. Gentoo has an install profile for this to
> prevent programs and libraries that have a dependency on 2.6 kernel
> headers from being installed when a 2.4 profile is being used.
>
> As part of the install process, I created an LVM2 volume group
> containing LVs for /, /usr, /var, /opt, and /home. I created
> filesystems on these LVs and performed the installation no problem. I
> also configured and compiled the kernel, which is a 2.4.32 based
> kernel with LVM2 backported into it by the Gentoo developer team.
>
> I created the initrd which is based on an initrd I created myself and
> have been using successfully on 2.4 and 2.6 based kernels. It
> contains the LVM tools and libraries, along with disk drivers and the
> device-mapper driver.
>
> When I run vgscan, it finds the volume group no problem. However,
> when I run 'vgchange -ay <vgname>', I see three problems.
>
> 1. There are entries in /dev/mapper/<vgname>-<lvname>, but no symlinks
> in the form /dev/<vgname>/<lvname> --> /dev/mapper/<vgname>/<lvname>. I
> run 'lvm vgmknodes' and it remedies this.
>
> 2. I see five complaints from 'vgchange -ay <vgname>' (one for each LV)
> as follows:
>
> on stderr: device-mapper: table ioctl failed: Invalid argument
> on console (from dm-mod driver): device-mapper: one of name or uuid must
> be supplied, cmd (12)
>
> I ran vgchange under strace and here is the following snippet:
>
> open("/dev/mapper/control", O_RDWR|O_LARGEFILE) = 9
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> mlockall(MCL_CURRENT|MCL_FUTURE) = 0
> brk(0x8936000) = 0x8936000
> brk(0x8b1e000) = 0x8b1e000
> getpriority(PRIO_PROCESS, 0) = 20
> setpriority(PRIO_PROCESS, 0, -18) = 0
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> ioctl(9, DM_DEV_STATUS, 0x8109958) = -1 ENXIO (No such device or
> address)
> stat64("/dev/ide/host0/bus0/target0/lun0/part10", {st_mode=S_IFBLK|0600,
> st_rdev=makedev(3, 10), ...}) = 0
> stat64("/dev/ide/host0/bus0/target0/lun0/part11", {st_mode=S_IFBLK|0600,
> st_rdev=makedev(3, 11), ...}) = 0
> stat64("/dev/ide/host0/bus0/target0/lun0/part12", {st_mode=S_IFBLK|0600,
> st_rdev=makedev(3, 12), ...}) = 0
> ioctl(9, DM_DEV_CREATE, 0x8109958) = 0
> ioctl(9, DM_TABLE_STATUS, 0x8109958) = -1 EINVAL (Invalid argument)
> write(2, " ", 2) = 2
> write(2, "device-mapper: table ioctl faile"..., 51) = 51
> write(2, "\n", 1) = 1
>
> 3. When I try to mount the filesystem in that LV, it fails. I tried
> with different filesystem types and it's the same result. From within
> the 2.4 kernel based initrd, it fails. If I reboot into the 2.6 kernel
> based installer environment, no problem.
>
> This looks like an incompatibility between the lvm2 and/or device-mapper
> library code and the kernel device-mapper code. Here are the versions
> installed in the install environment (the one that works):
>
> lvm> version
> LVM version: 2.02.05 (2006-04-21)
> Library version: 1.02.03 (2006-02-08)
> Driver version: 4.4.0
>
> In the initrd, the only thing different would be the driver version.
> Later today I will have access to the machine again and I can run the
> lvm version command there to see what the driver version is. In the
> meantime, I am looking at the kernel sources and I don't see anything
> obvious in the driver/md directory.
>
> _______________________________________________
> linux-lvm mailing list
> linux-lvm@redhat.com
> https://www.redhat.com/mailman/listinfo/linux-lvm
> read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [linux-lvm] LVM2 tools<-->library<-->driver compatibility
2006-05-16 18:46 ` Joe Harvell
@ 2006-05-16 19:58 ` Alasdair G Kergon
2006-05-16 22:27 ` Joe Harvell
0 siblings, 1 reply; 4+ messages in thread
From: Alasdair G Kergon @ 2006-05-16 19:58 UTC (permalink / raw)
To: LVM general discussion and development
On Tue, May 16, 2006 at 01:46:59PM -0500, Joe Harvell wrote:
> How can I determine which combinations should be compatible? What
> version of the tools/library do I need to downgrade to in my installed
> environment?
Don't downgrade userspace tools - upgrade them. Best to use the same versions
of userspace packages in both environments. But avoid snapshots.
(You'd need old packages on 2.4 to use them, and they're buggy anyway.)
The 2.4 kernel patches haven't been updated for some time and contain some
bugs that already got fixed in the 2.6 tree.
Alasdair
--
agk@redhat.com
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [linux-lvm] LVM2 tools<-->library<-->driver compatibility
2006-05-16 19:58 ` Alasdair G Kergon
@ 2006-05-16 22:27 ` Joe Harvell
0 siblings, 0 replies; 4+ messages in thread
From: Joe Harvell @ 2006-05-16 22:27 UTC (permalink / raw)
To: LVM general discussion and development
The problem is solved by upgrading the the device mapper library to
1.02.05. Thanks.
As for the 2.4 kernel, I have to use 2.4 on this box for Rational
Clearcase MVFS compatibility.
Alasdair G Kergon wrote:
> On Tue, May 16, 2006 at 01:46:59PM -0500, Joe Harvell wrote:
>
>> How can I determine which combinations should be compatible? What
>> version of the tools/library do I need to downgrade to in my installed
>> environment?
>>
>
> Don't downgrade userspace tools - upgrade them. Best to use the same versions
> of userspace packages in both environments. But avoid snapshots.
> (You'd need old packages on 2.4 to use them, and they're buggy anyway.)
>
> The 2.4 kernel patches haven't been updated for some time and contain some
> bugs that already got fixed in the 2.6 tree.
>
> Alasdair
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2006-05-16 22:28 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-15 18:02 [linux-lvm] LVM2 tools<-->library<-->driver compatibility Joe Harvell
2006-05-16 18:46 ` Joe Harvell
2006-05-16 19:58 ` Alasdair G Kergon
2006-05-16 22:27 ` Joe Harvell
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).