From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020830 Description of problem: Red Hat Issue Tracker number: IT# 35830 Bug Reported by: Glen Johnson (IBM LTC) IBM Technical Account Manager: Mike Gahagan HardWare Environment: ppc64 The "pvmove" command uses the PE_LOCKED_COPY (0x4004fe51) ioctl to finish the move from one physical extent to another. Unfortunately, this ioctl has not been handled at all on ppc64 kernel and always return -EINVAL. If we add (hack) COMPATIBLE_IOCTL(PE_LOCKED_COPY) as: --- arch/ppc64/kernel.orig/ioctl32.c 2004-03-05 10:32:56.000000000 +0530 +++ arch/ppc64/kernel/ioctl32.c 2004-03-02 16:23:39.000000000 +0530 @@ -4366,6 +4366,7 @@ COMPATIBLE_IOCTL(VG_RENAME), COMPATIBLE_IOCTL(VG_REDUCE), COMPATIBLE_IOCTL(PE_LOCK_UNLOCK), +COMPATIBLE_IOCTL(PE_LOCKED_COPY), COMPATIBLE_IOCTL(PV_FLUSH), COMPATIBLE_IOCTL(LVM_LOCK_LVM), COMPATIBLE_IOCTL(LVM_GET_IOP_VERSION), then then "pvmove" completes without error. Version-Release number of selected component (if applicable): RHEL3 (kernel-2.4.21-x.EL) How reproducible: Always Steps to Reproduce: On a ppc64 machine: 1. Create two physical volume, and then create a volume group on them. e.g. shell> parted #create 2 spare disk partitions - each 800MB. shell> vgscan #if first run of LVM shell> pvcreate /dev/sda5 /dev/sda6 shell> vgcreate vg001 /dev/sda5 /dev/sda6 2. Create a logical volume, then create and mount a file system on it. e.g. shell> lvcreate -L 200M -n lv001 vg001 shell> mkfs.ext3 /dev/vg001/lv001 shell> mkdir /lvmtst shell> mount /dev/vg001/lv001 /lvmtst 3. Move the physical extent from one physical volume to another e.g. shell> pvdisplay -v /dev/sda5 shell> pvdisplay -v /dev/sda6 shell> pvmove -v /dev/sdc5 pvmove -- ERROR reading input physical volume "/dev/sdc5" (still 4194304 bytes to read) pvmove -- ERROR "pv_move_pe(): read input PV" moving physical extents Actual Results: The "pvmove" command fails with the following error messages: pvmove -- ERROR reading input physical volume "/dev/sdc5" (still 4194304 bytes to read) pvmove -- ERROR "pv_move_pe(): read input PV" moving physical extents Expected Results: The command (pvmove) finished successfully Additional info: 1. The x86 doesn't have this problem. 2. Experiments were done on p655.test.redhat.com (192.168.33.46). 3. Contact James Laska (QA Engineer) if you need machine access.
Wendy's patch above has just been committed to the RHEL3 U3 patch pool this evening (in kernel version 2.4.21-15.4.EL).
An errata has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2004-433.html