[linux-lvm] Re: LVM2 on 2.4.22. (Fedora core 1 with nptl)

Måns Rullgård mru at kth.se
Fri Nov 21 15:45:05 UTC 2003

tugg <tugg at dial.pipex.com> writes:

> Trying to install LVM2 on 2.4.22. (Fedora core 1 with nptl)
> Downloaded device mapper (device-mapper-stable.tgz) and LVM2
> (LVM2.0- stable.tgz) from sistina.com. Unpacked to
> device-mapper.1.00.5 and LVM2.2.00.07.
> For device mapper: did configure followed by make install. There is
> no patch for 2.4.22 so I assumed that the kernel was already patched
> (mistake?).

Device-mapper is not in any vanilla 2.4 kernel.  Maybe redhat added

> LVM and device mapper are already loadable modules, so
> no need to recompile kernel (correct?). Added script to
> /etc/modules.conf and reboot. DMESG shows LVM version
> 1.0.5+(22/07/2002) module loaded.
> pvscan -h gives me the following:
> Logical Volume Manager 1.0.3
> Heinz Mauelshagen, Sistina Software  19/02/2002 (IOP 10)
> Why is it telling me 1.0.3 when DMESG says 1.0.5+?

pvscan -h tells you the version of the pvscan utility.  The kernel log
contains the version of LVM in the kernel.  In this case, they are not
the same.  This is nothing to worry about, in general.

> dmsetup --version gives me:
> Library version:   1.00.05-ioctl-cvs (2003-09-01)
> device-mapper: ioctl interface mismatch: kernel(1.0.3), user(4.0.0), cmd(0)
> Driver version:    1.0.3
> The ioctl interface mismatch message behaves kind of strangely in
> that it isn't written to std error, i.e. dmsetup --version 1>
> dmsetup.log 2>&1 doesn't write the message to dmsetup.log. It still
> appears on the console. Even more bizarrely, if I log in through
> OpenSSH it doesn't appear in my session - it appears on the physical
> console (i.e. the monitor connected to the server), and it does this
> even when no user is logged on!!! It also doesn't appear in a
> terminal session under X. Is this behaviour 'by design'? I missed
> the message initially and only found it when I physically went to
> the server...

This is because the message is generated by the kernel, and your
syslog daemon is configured to print whatever type of message that was
to the console.

> For LVM:
> Did configure and make install. Got the following error message:
> device/dev-io.c: In function `dev_get_size':
> device/dev-io.c:215: error: `BLKGETSIZE64' undeclared (first use in this 
> function)
> device/dev-io.c:215: error: (Each undeclared identifier is reported only once
> device/dev-io.c:215: error: for each function it appears in.)
> make[1]: *** [device/dev-io.o] Error 1
> make[1]: *** Waiting for unfinished jobs....
> make[1]: Leaving directory `/usr/LVM/LVM2.2.00.07/lib'
> make: *** [lib] Error 2

Something in the sources is incompatible with your kernel.

> Is this caused by the ioctl mismatch or is there something else
> going on here?  If it is a known problem, is there a workaround?
> After trying all of the above, found patches for 2.4.22 via mailing list 
> archives (2.4.22-dm-1.tar.bz2) and upacked to get directory 2.4.22-dm-1 
> containing patch files 00001 through 00016 and INDEX. Used cat to create one 
> large patch file (file patches-2.4.22.patch attached) with all the patches 
> (mistake?) and did patch --dry-run -p1 
> with this file (only dry run, so nothing applied yet). This indicates some 
> patches will apply, some are already applied, and quite a few will fail (see 
> attached patches-2.4.22.log file). Is this because I installed device mapper 
> before the patches, or do these patches just not fit my system? 

Apparently you already have device-mapper in your kernel.

Måns Rullgård
mru at kth.se

More information about the linux-lvm mailing list