Skip to contentSkip to conversation

Problem with pvmove of system installation volume

linux-lvm Ralf Müller 1 participant 2 messages Dec 2, 2004 – Dec 3, 2004

lore
Share & tools
lore
#0 lore raw

Hi there,

the day before I started to do my first tests with lvm on Linux. I installed a fresh SuSE 9.2 on a machine with two identical disks, created 3 RAID 1 partitions and created on top of all this my first logical volume on Linux. Actually I created this "root" volume first, and installed SuSE on it. No problems so far. I was able to increase the "root" volume, I was able to create another "test" volume and shrink it when it was not mounted ... cool stuff - really.

The next thing I wanted to test was moving a logical volume from one physical volume to another. Usecase: replacement of an old/too small/for whatever reason unwanted disk by another. This was perfectly ok with the "test" volume - the one that I was able to shrink before. But when I tried the same with the "root" volume pvmove locked and I had to reset the machine. On the next boot the machine reported problems with the volume group on which the root volume is located and entered a recovery shell. There I had to call "lvm pvmove --abort" and after another restart the machine booted again. After this first experience I tried to upgrade the pached SuSE 2.6.8 kernel to a vanilla 2.6.9 from kernel.org, I upgraded the lvm2 binaries from version 2.0.25 to 2.0.29 - no changes. I googled around ... I found some reports about problems with pvmove - but nothing that matched my actual problem (as far as I can see it). So my hope is that someone here can help me a step further with this problem.

There were no messages in syslog when the machine stopped. The visible output of "pvmove -vv -n Root /dev/md0 /dev/md2" was:
Setting global/locking_type to 1
Setting global/locking_dir to /var/lock/lvm File-based locking enabled.
/dev/md0: lvm2 label detected
/dev/md0: lvm2 label detected
/dev/md0: lvm2 label detected
/dev/md1: lvm2 label detected
/dev/md2: lvm2 label detected
/dev/hda3: No label detected
/dev/hdc3: No label detected
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
Finding volume group "system"
Locking /var/lock/lvm/V_system WB
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
Archiving volume group "system" metadata.
Creating logical volume pvmove0
Getting target version for mirror
Moving /dev/md0:0-1023 of system/Root
Moving /dev/md0:1610-1737 of system/Root
Moving 1152 extents of logical volume system/Root
Finding volume group for uuid
Qo3GHB44Twwv7MYsUjJtWUCuPH5P2vviIikXQlamoffNvHYy5DUCF66jqwCCepYC
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
Found volume group "system"
Setting activation/missing_stripe_filler to /dev/ioerror
Updating volume group metadata
Creating volume group backup "/etc/lvm/backup/system"
Finding volume group for uuid
Qo3GHB44Twwv7MYsUjJtWUCuPH5P2vviIikXQlamoffNvHYy5DUCF66jqwCCepYC
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
Found volume group "system"
Locking memory
Suspending system-Root
Finding volume group for uuid
Qo3GHB44Twwv7MYsUjJtWUCuPH5P2vviK1M7zT9n1b350JWv5oYIL2CJuiUVy1iz
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
/dev/md0: lvm2 label detected
/dev/md2: lvm2 label detected
Found volume group "system"
Loading system-pvmove0
Setting activation/mirror_region_size to 512

Signature · 2 lines
Van Roy's Law: -------------------------------------------------------
       An unbreakable toy is useful for breaking other toys.
#1 lore raw

Ok - update to my own post. I started the move process again - this time with strace to get a protocoll of the failed system call. So the last system calls of pvmove were:

write(1, " /dev/md2: lvm2 label detec"..., 36) = 36
ioctl(5, BLKBSZGET, 0xbfff8f5c) = 0
_llseek(5, 0, [0], SEEK_SET) = 0
read(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
ioctl(5, BLKBSZGET, 0xbfff8f7c) = 0
_llseek(5, 53248, [53248], SEEK_SET) = 0
read(5, "system {\nid = \"Qo3GHB-44Tw-wv7M-"..., 4096) = 4096
write(1, " Found volume group \"system\"\n", 32) = 32
ioctl(6, DM_DEV_STATUS, 0x80d14b0) = -1 ENXIO (No such device or
address)
ioctl(6, DM_DEV_STATUS, 0x80d14b0) = -1 ENXIO (No such device or
address)

ioctl(6, DM_LIST_DEVICES, 0x80d14b0)    = 0
ioctl(6, DM_DEV_STATUS, 0x80ff518)      = 0
ioctl(6, DM_DEV_STATUS, 0x80ff518)      = 0
ioctl(6, DM_DEV_STATUS, 0x80ff580)      = 0
ioctl(6, DM_DEV_STATUS, 0x80ff5c8)      = -1 ENXIO (No such device or 

address)
ioctl(6, DM_DEV_STATUS, 0x80d14b0) = -1 ENXIO (No such device or
address)
write(1, " Loading system-pvmove0\n", 27) = 27
write(1, " Setting activation/mirror_"..., 51) = 51
ioctl(6, DM_DEV_CREATE

And here it stopped ...
Ralf

Signature · 2 lines
Van Roy's Law: -------------------------------------------------------
       An unbreakable toy is useful for breaking other toys.