[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [dm-devel] [lvm-devel] linux-2.6.35+ causes LVM to fail with " device-mapper: version ioctl failed: Inappropriate ioctl for device"

On Mon, Aug 16, 2010 at 10:22 PM, Alasdair G Kergon <agk redhat com> wrote:
> On Mon, Aug 16, 2010 at 03:56:48PM +0200, Zdenek Kabelac wrote:
>> Dne 15.8.2010 16:13, Jeff Chua napsal(a):
>> > With 2.6.35++, /dev/mapper/control has moved from 60 to 236!
> The latest LVM package made an assumption that it would be set up
> correctly by udev (or manually in your case).  We are updating
> the userspace libdevmapper code to handle your circumstances
> automatically.

It'll be nice if lvm returns a more meanful message like "ioctl
failed. Check /proc/misc to ensure the device is mapped correctly."

To take care of it automatically with udev, I'm doing this in rc.S

if [ -f /sys/devices/virtual/misc/device-mapper/dev ]
        rm -f /dev/mapper/control
        mknod /dev/mapper/control c ${NODE/:/ }

>> > # vgchange -a n vg01
>> >   Internal error: Maps lock 14217216 < unlock 14221312
>> >   Internal error: Maps lock 14221312 < unlock 14225408
>> >   Internal error: Maps lock 14225408 < unlock 14229504
>> >   Internal error: Maps lock 14229504 < unlock 14233600
>> >   Internal error: Maps lock 14233600 < unlock 14237696
>> >   Internal error: Maps lock 14237696 < unlock 14241792
>> >   0 logical volume(s) in volume group "vg01" now active
>> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=d7824370e26325c881b665350ce64fb0a4fde24a
> For those interested, originally we used mlockall() but in non-C locales
> on some distributions glibc is configured to map 80MB+ of locale data
> into memory without offering any way to unmap it.  We don't need
> that data locked and it increased the minimum memory required to install
> a distribution as well as slowing down the LVM tools!  So we had to
> write a customised version that tries to skip locking unnecessary pages
> like those.

I see that now it's fixed with that commit.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]