[linux-lvm] vgscan -- ERROR "pv_read_pe(): PV size invalid" ...
Simon Klaiber
lists at klaiber.com
Thu Jul 13 08:42:55 UTC 2006
After many tries I still have found no solution for my problem.
I'm getting real desperate beacuse there is some important data on the
vg and for some newer stuff i don't have a backup.
I don't care if i can't bring back the vg to fully functional but I need
at least a solution that allows me to copy the files to other disks.
I'm pretty sure that all data is still there also the data i can see
with pvdisplay/pvdata looks good.
I have valid lvmconf files for the fileserver vg and can play them in
using vgcfgrestore
I just don't have an recent backup of lvmtab and lvmtab.d (i think the
most recent one was before the last chage of the LVs.
Can I destroy somethin when I try to activate the VG using these old files?
What is a bit strange to me is the
<333> pv_read_pe -- CALLED with /dev/md0 and 4024434688
Part of the debug information since I don't understand what this (IMHO
to big number means)
It is produce by this source code
debug_enter ( "pv_read_pe -- CALLED with %s and %lu\n",
pv != NULL ? pv->pv_name : "NULL",
pv != NULL ? pv->pe_total : 0);
and i just cant bring together this number with what i see in pvdisplay
The second thing I don't understand is the exact cause of the error:
The error number is defined as:
#define
LVM_EPV_READ_PE_SIZE 277
and the point where it is thrown looks like this:
size = pv->pe_total * sizeof ( pe_disk_t);
if ( size + pv->pe_on_disk.base > LVM_VGDA_SIZE ( pv)) {
ret = -LVM_EPV_READ_PE_SIZE;
goto pv_read_pe_end;
}
where is defined as
#define LVM_VGDA_SIZE(pv) ((pv)->pe_on_disk.base + (pv)->pe_on_disk.size)
This means that pe_on_disk_size is smaller than size
I coud not find out what sizeof ( pe_disk_t) stnds for but it still let
me assume that pv->pe_total is to big
What could have caused this problem?
I would be very happy about any kind of help!
Thanks Simon
Simon Klaiber wrote:
>I have following problem:
>
>I'm running lvm on a Linux 2.4.20 Kernel since 2 Years now without
>problems
>
>There is only one PV a Software RAID5 (/dev/md0) consiting out of 6 Disks
>
>No I had to exchage the motherboard due to a hw failure.
>
>After this exchage the Software Raid found 5 of the 6 Disks and
>started without redudancy.
>At this point the lvm was still working correct.
>
>I hot added the missing Drive to the RAID again which worked fine.
>
>After that i reebootet the system for other reasons.
>
>The result:
>
>The Raid still work fine but vgscan Fails with following error:
>
>----------------
>vgscan -- reading all physical volumes (this may take a while...)
>vgscan -- ERROR "pv_read_pe(): PV size invalid" can't get data of
>volume group "fileserver" from physical volume(s)
>vgscan -- "/etc/lvmtab" and "/etc/lvmtab.d" successfully created
>vgscan -- WARNING: This program does not do a VGDA backup of your
>volume group
>----------------
>
>Does anyone knows how I can recover from this error and save my data.
>
>Thanks and greetings from Germany
>Simon
>
>Additional Information:
>
>1) --------- Version of LVM ------------
>Logical Volume Manager 1.0.6(mp-v6)
>Heinz Mauelshagen, Sistina Software 25/10/2002 (IOP 10)
>
>2) --------- possibility of update ------------
>I cannot do any updates that include Kernel updates since the hdd
>controlor runs only with this kernel version
>
>3) --------- Result of pvscan ------------
>pvscan -- reading all physical volumes (this may take a while...)
>pvscan -- inactive PV "/dev/md0" is associated to unknown VG
>"fileserver" (run vgscan)
>pvscan -- total: 1 [8.02 GB] / in use: 1 [8.02 GB] / in no VG: 0 [0]
>
>
>4) --------- Result of pvdisplay /dev/md0 ------------
>--- Physical volume ---
>PV Name /dev/md0
>VG Name fileserver
>PV Size 931.55 GB [1953606400 secs] / NOT usable 32.25
>MB [LVM: 244 KB]
>PV# 1
>PV Status available
>Allocatable yes
>Cur LV 10
>PE Size (KByte) 32768
>Total PE 29808
>Free PE 2256
>Allocated PE 27552
>PV UUID 5fK20C-BzqI-6PIc-nj8b-3DTD-TJ3p-0uJpn4
>
>
>5) --------- Result of pvdata /dev/md0 ------------
>--- Physical volume ---
>PV Name /dev/md0
>VG Name fileserver
>PV Size 931.55 GB [1953606400 secs] / NOT usable 32.25
>MB [LVM: 244 KB]
>PV# 1
>PV Status available
>Allocatable yes
>Cur LV 10
>PE Size (KByte) 32768
>Total PE 29808
>Free PE 2256
>Allocated PE 27552
>PV UUID 5fK20C-BzqI-6PIc-nj8b-3DTD-TJ3p-0uJpn4
>
>--- Volume group ---
>VG Name
>VG Access read/write
>VG Status NOT available/resizable
>VG # 0
>MAX LV 256
>Cur LV 10
>Open LV 0
>MAX LV Size 2 TB
>Max PV 256
>Cur PV 1
>Act PV 1
>VG Size 931.50 GB
>PE Size 32 MB
>Total PE 29808
>Alloc PE / Size 27552 / 861 GB
>Free PE / Size 2256 / 70.50 GB
>VG UUID mDIV2I-dJd3-0oJW-XJt3-nHI7-sAjv-8bs8pj
>
>--- List of logical volumes ---
>
>pvdata -- logical volume "/dev/fileserver/db" at offset 0
>pvdata -- logical volume "/dev/fileserver/docs" at offset 1
>pvdata -- logical volume "/dev/fileserver/code" at offset 2
>pvdata -- logical volume "/dev/fileserver/pics" at offset 3
>pvdata -- logical volume "/dev/fileserver/mp3" at offset 4
>pvdata -- logical volume "/dev/fileserver/arch" at offset 5
>pvdata -- logical volume "/dev/fileserver/pg" at offset 6
>pvdata -- logical volume "/dev/fileserver/pt" at offset 7
>pvdata -- logical volume "/dev/fileserver/bak" at offset 8
>pvdata -- logical volume struct at offset 9 is empty
>pvdata -- logical volume "/dev/fileserver/films" at offset 10
>pvdata -- logical volume struct at offset 11 is empty
>pvdata -- logical volume struct at offset 12 is empty
>pvdata -- logical volume struct at offset 13 is empty
>[..... empty volums structs cut out ...]
>pvdata -- logical volume struct at offset 254 is empty
>pvdata -- logical volume struct at offset 255 is empty
>--- List of physical volume UUIDs ---
>
>001: 5fK20C-BzqI-6PIc-nj8b-3DTD-TJ3p-0uJpn4
>
>
>
>6) --------- Result vgscan -d (DEBUG MODE) ------------
><1> lvm_get_iop_version -- CALLED
><22> lvm_check_special -- CALLED
><22> lvm_check_special -- LEAVING
>[... a lot lines cut out ...]
><333> vg_check_name -- CALLED with VG: fileserver
><4444> lvm_check_chars -- CALLED with name: "fileserver"
><4444> lvm_check_chars -- LEAVING with ret: 0
><333> vg_check_name -- LEAVING with ret: 0
><333> pv_read_all_pv_of_vg -- CALLED with vg_name: "fileserver"
><4444> vg_check_name -- CALLED with VG: fileserver
><55555> lvm_check_chars -- CALLED with name: "fileserver"
><55555> lvm_check_chars -- LEAVING with ret: 0
><4444> vg_check_name -- LEAVING with ret: 0
><333> pv_read_all_pv_of_vg -- LEAVING with ret: 0
><22> pv_read_all_pe_of_vg -- pv_count: 1
><333> pv_read_pe -- CALLED with /dev/md0 and 4024434688
><333> pv_read_pe -- LEAVING with ret: -277
><22> pv_read_all_pe_of_vg -- LEAVING with ret: -277
><1> vg_read_with_pv_and_lv -- LEAVING with ret: -277
><1> lvm_error -- CALLED with: -277
><1> lvm_error -- LEAVING with: "pv_read_pe(): PV size invalid"
>vgscan -- ERROR "pv_read_pe(): PV size invalid" can't get data of
>volume group "fileserver" from physical volume(s)
><1> vg_free -- CALLED
><1> vg_free -- LEAVING with ret: -99
><1> lvm_interrupt -- CALLED
><1> lvm_interrupt -- LEAVING
><1> lvm_unlock -- CALLED
><1> lvm_unlock -- LEAVING with ret: 0
><1> lvm_unlock -- CALLED
><1> lvm_unlock -- LEAVING with ret: -104
>vgscan -- reading all physical volumes (this may take a while...)
>vgscan -- "/etc/lvmtab" and "/etc/lvmtab.d" successfully created
>vgscan -- WARNING: This program does not do a VGDA backup of your
>volume group
>
>
>_______________________________________________
>linux-lvm mailing list
>linux-lvm at redhat.com
>https://www.redhat.com/mailman/listinfo/linux-lvm
>read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
>
>
>
More information about the linux-lvm
mailing list