Skip to contentSkip to conversation

vgdisplay - checksum error - what does it mean?

linux-lvm Tomasz Chmielewski 3 participants 11 messages Feb 15, 2007 – Mar 2, 2007

lore
Share & tools
lore
#0 lore raw

Recently, I used "vgdisplay", and noticed that it gives a "checksum error":

# vgdisplay
  /dev/sda2: Checksum error
  --- Volume group ---
  VG Name               LVM2
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  49
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                34
  Open LV               34
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               743.16 GB
  PE Size               4.00 MB
  Total PE              190250
  Alloc PE / Size       175807 / 686.75 GB
  Free  PE / Size       14443 / 56.42 GB
  VG UUID               yV2ADe-MeJd-dHbd-ExLP-AIu3-OTA2-u46qhl

Should I be scared? What does it mean? What should I do about it? I wouldn't like to loose the data.

If it helps, my setup looks like that:

HDD1-sda2-\
HDD2-sdb2-|__RAID-10--LVM-2
HDD3-sdc2-|
HDD4-sdd2-/

I'm running 2.6.17.8 kernel.

Signature · 2 lines
Tomasz Chmielewski
http://wpkg.org
#1 lore raw
Quoted 28 lines · Tomasz Chmielewski

Recently, I used "vgdisplay", and noticed that it gives a "checksum error":

# vgdisplay
  /dev/sda2: Checksum error
  --- Volume group ---
  VG Name               LVM2
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  49
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                34
  Open LV               34
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               743.16 GB
  PE Size               4.00 MB
  Total PE              190250
  Alloc PE / Size       175807 / 686.75 GB
  Free  PE / Size       14443 / 56.42 GB
  VG UUID               yV2ADe-MeJd-dHbd-ExLP-AIu3-OTA2-u46qhl

Should I be scared? What does it mean? What should I do about it? I wouldn't like to loose the data.

Quoted 8 lines

If it helps, my setup looks like that:

HDD1-sda2-\
HDD2-sdb2-|__RAID-10--LVM-2
HDD3-sdc2-|
HDD4-sdd2-/

I'm running 2.6.17.8 kernel.

Hmmm... isn't it something that tells about the history of that system?

# lvmdiskscan | egrep '(sd|md)'
  /dev/sda2: Checksum error
  /dev/md0                      [        1.03 GB]
  /dev/md1                      [        1.03 GB]
  /dev/sda2                     [      371.58 GB] LVM physical volume
  /dev/md2                      [      743.16 GB] LVM physical volume
  /dev/sdb2                     [      371.58 GB]
  /dev/sdc2                     [      371.58 GB]
  /dev/sdd2                     [      371.58 GB]

/dev/md0 is RAID-1 -> swap
/dev/md1 is RAID-1 -> root filesystem
/dev/md2 is RAID-10 -> all LVM volumes

So this basically means, that LVM was set up on /dev/sda2 some time ago, but it was never removed from there - instead, RAID-10 was set up on that partition?

Should I do something to fix the things? What?

Signature · 2 lines
Tomasz Chmielewski
http://wpkg.org
#2 lore raw
Quoted 5 lines · Tomasz Chmielewski
Quoted 4 lines · Tomasz Chmielewski

Recently, I used "vgdisplay", and noticed that it gives a "checksum error":

# vgdisplay
  /dev/sda2: Checksum error

....

Quoted 12 lines
Quoted 11 lines

Should I be scared? What does it mean? What should I do about it? I wouldn't like to loose the data.

If it helps, my setup looks like that:

HDD1-sda2-\
HDD2-sdb2-|__RAID-10--LVM-2
HDD3-sdc2-|
HDD4-sdd2-/

I'm running 2.6.17.8 kernel.

...

Quoted 2 lines

So this basically means, that LVM was set up on /dev/sda2 some time ago, but it was never removed from there - instead, RAID-10 was set up on that partition?

I don't think so. if sda2 is part of a raid10 md array probably the beginning sector of the md device maps to the beginning sector of the real device, hence lvm will find an lvm signature on /dev/sda2.

Quoted 1 line

Should I do something to fix the things? What?

yes, re-enable md_component_detection in lvm.conf, why did you disable that?

L.

Signature · 6 lines
Luca Berra -- [email protected]
       Communication Media & Services S.r.l.
/"\
\ /     ASCII RIBBON CAMPAIGN
 X        AGAINST HTML MAIL
/ \
#3 lore raw
Quoted 19 lines · Luca Berra
Quoted 5 lines · Tomasz Chmielewski
Quoted 4 lines · Tomasz Chmielewski

Recently, I used "vgdisplay", and noticed that it gives a "checksum error":

# vgdisplay
  /dev/sda2: Checksum error

....

Quoted 12 lines
Quoted 11 lines

Should I be scared? What does it mean? What should I do about it? I wouldn't like to loose the data.

If it helps, my setup looks like that:

HDD1-sda2-\
HDD2-sdb2-|__RAID-10--LVM-2
HDD3-sdc2-|
HDD4-sdd2-/

I'm running 2.6.17.8 kernel.

Quoted 7 lines

...

Quoted 2 lines

So this basically means, that LVM was set up on /dev/sda2 some time ago, but it was never removed from there - instead, RAID-10 was set up on that partition?

I don't think so. if sda2 is part of a raid10 md array probably the beginning sector of the md device maps to the beginning sector of the real device, hence lvm will find an lvm signature on /dev/sda2.

Is there a way to check if it's really the case?

There's something wrong with /dev/sda2 - lvmdiskscan claims it's a 371.58 GB LVM physical volume, while /dev/md2 is the physical volume I use.

  /dev/sda2                     [      371.58 GB] LVM physical volume
  /dev/md2                      [      743.16 GB] LVM physical volume
Quoted 3 lines
Quoted 1 line

Should I do something to fix the things? What?

yes, re-enable md_component_detection in lvm.conf, why did you disable that?

Certainly I didn't touch anything in /etc/lvm/*.
If I look into /etc/lvm/lvm.conf, it says:

devices {
(...)
# By default, LVM2 will ignore devices used as components of # software RAID (md) devices by looking for md superblocks. # 1 enables; 0 disables.
md_component_detection = 1
}

It's enabled.

So the problem is somewhere else. Where?

BTW, the machine is running Debian etch (ARM port).

"smartctl" says all four disks are fine (they are quite new, too), so it's definitely not a hardware problem.

I guess one way to fix it would be mark all partitions faulty on /dev/sda, and then, to recreate the RAIDs. But I'm curious to know how could I handle such a situation if I didn't have RAID.

Signature · 2 lines
Tomasz Chmielewski
http://wpkg.org
#4 lore raw
Quoted 7 lines · Tomasz Chmielewski
Quoted 5 lines
Quoted 1 line

So this basically means, that LVM was set up on /dev/sda2 some time ago, but it was never removed from there - instead, RAID-10 was set up on that partition?

I don't think so. if sda2 is part of a raid10 md array probably the beginning sector of the md device maps to the beginning sector of the real device, hence lvm will find an lvm signature on /dev/sda2.

Is there a way to check if it's really the case?

dd?

Quoted 21 lines

There's something wrong with /dev/sda2 - lvmdiskscan claims it's a 371.58 GB LVM physical volume, while /dev/md2 is the physical volume I use.

  /dev/sda2                     [      371.58 GB] LVM physical volume
  /dev/md2                      [      743.16 GB] LVM physical volume
Quoted 3 lines
Quoted 1 line

Should I do something to fix the things? What?

yes, re-enable md_component_detection in lvm.conf, why did you disable that?

Certainly I didn't touch anything in /etc/lvm/*.
If I look into /etc/lvm/lvm.conf, it says:

devices {
(...)
# By default, LVM2 will ignore devices used as components of # software RAID (md) devices by looking for md superblocks. # 1 enables; 0 disables.
md_component_detection = 1
}

Quoted 3 lines

It's enabled.

So the problem is somewhere else. Where?

with md_component_detection enabled lvm should ignore /dev/sda2. can you send the output of lvmdiskscan -vvv?

Quoted 1 line

BTW, the machine is running Debian etch (ARM port).

mmm i don't have an arm maybe this is the issue why lvm does not understand that sda2 is a md component?!?

Quoted 1 line

"smartctl" says all four disks are fine (they are quite new, too), so it's definitely not a hardware problem.

sure it is not an hw problem do not worry.

Quoted 2 lines

I guess one way to fix it would be mark all partitions faulty on /dev/sda, and then, to recreate the RAIDs. But I'm curious to know how could I handle such a situation if I didn't have RAID.

what would it fix? you have no problem except lvm2 believing sda2 is an lvm volume which is not.

Signature · 6 lines
Luca Berra -- [email protected]
       Communication Media & Services S.r.l.
/"\
\ /     ASCII RIBBON CAMPAIGN
 X        AGAINST HTML MAIL
/ \
#5 lore raw
Quoted 4 lines · Luca Berra
Quoted 1 line · Tomasz Chmielewski

BTW, the machine is running Debian etch (ARM port).

mmm i don't have an arm maybe this is the issue why lvm does not understand that sda2 is a md component?!?

I've not followed this thread, but you must use version 2.02.21 or later for the ARM architecture with md (or backport the patch).

Alasdair

Signature · 1 line
[email protected]
#6 lore raw
Quoted 8 lines · Alasdair G Kergon
Quoted 4 lines · Luca Berra
Quoted 1 line · Tomasz Chmielewski

BTW, the machine is running Debian etch (ARM port).

mmm i don't have an arm maybe this is the issue why lvm does not understand that sda2 is a md component?!?

I've not followed this thread, but you must use version 2.02.21 or later for the ARM architecture with md (or backport the patch).

Hmm, I must try that.

I'll let the list know in a week or so.

Signature · 2 lines
Tomasz Chmielewski
http://wpkg.org
#7 lore raw
Quoted 7 lines · Tomasz Chmielewski
Quoted 6 lines · Alasdair G Kergon
Quoted 4 lines · Luca Berra
Quoted 1 line · Tomasz Chmielewski

BTW, the machine is running Debian etch (ARM port).

mmm i don't have an arm maybe this is the issue why lvm does not understand that sda2 is a md component?!?

Quoted 6 lines
Quoted 2 lines

I've not followed this thread, but you must use version 2.02.21 or later for the ARM architecture with md (or backport the patch).

Hmm, I must try that.

I'll let the list know in a week or so.

Hmm, I can't compile that:

(...)
gcc -c -I. -I../include -DHAVE_CONFIG_H -fPIC -Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn -O2 striped/striped.c -o striped/striped.o report/report.c:67: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:67: warning: its scope is only this definition or declaration, which is probably not what you want
report/report.c:67: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_string_disp?:
report/report.c:69: warning: implicit declaration of function ?dm_report_field_string?
report/report.c:69: warning: nested extern declaration of ?dm_report_field_string?
report/report.c: At top level:
report/report.c:74: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:74: warning: ?struct dm_report? declared inside parameter list
report/report.c:83: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:83: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_devices_disp?:
report/report.c:116: warning: implicit declaration of function ?dm_snprintf?
report/report.c:116: warning: nested extern declaration of ?dm_snprintf?
report/report.c:139: warning: implicit declaration of function ?dm_report_field_set_value?
report/report.c:139: warning: nested extern declaration of ?dm_report_field_set_value?
report/report.c: At top level:
report/report.c:146: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:146: warning: ?struct dm_report? declared inside parameter list
report/report.c:176: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:176: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_modules_disp?:
report/report.c:189: warning: passing argument 1 of ?_tags_disp? from incompatible pointer type
report/report.c:189: warning: passing argument 3 of ?_tags_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:194: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:194: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_vgfmt_disp?:
report/report.c:203: warning: passing argument 1 of ?_string_disp? from incompatible pointer type
report/report.c:203: warning: passing argument 3 of ?_string_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:208: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:208: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_pvfmt_disp?:
report/report.c:218: warning: passing argument 1 of ?_string_disp? from incompatible pointer type
report/report.c:218: warning: passing argument 3 of ?_string_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:223: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:223: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_lvkmaj_disp?:
report/report.c:230: warning: implicit declaration of function ?dm_report_field_int?
report/report.c:230: warning: nested extern declaration of ?dm_report_field_int?
report/report.c:232: warning: implicit declaration of function ?dm_report_field_uint64?
report/report.c:232: warning: nested extern declaration of ?dm_report_field_uint64?
report/report.c: At top level:
report/report.c:237: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:237: warning: ?struct dm_report? declared inside parameter list
report/report.c:251: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:251: warning: ?struct dm_report? declared inside parameter list
report/report.c:336: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:336: warning: ?struct dm_report? declared inside parameter list
report/report.c:362: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:362: warning: ?struct dm_report? declared inside parameter list
report/report.c:406: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:406: warning: ?struct dm_report? declared inside parameter list
report/report.c:421: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:421: warning: ?struct dm_report? declared inside parameter list
report/report.c:435: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:435: warning: ?struct dm_report? declared inside parameter list
report/report.c:453: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:453: warning: ?struct dm_report? declared inside parameter list
report/report.c:487: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:487: warning: ?struct dm_report? declared inside parameter list
report/report.c:506: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:506: warning: ?struct dm_report? declared inside parameter list
report/report.c:536: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:536: warning: ?struct dm_report? declared inside parameter list
report/report.c:565: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:565: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_vgsize_disp?:
report/report.c:572: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:572: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:577: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:577: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_segstart_disp?:
report/report.c:584: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:584: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:589: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:589: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_segsize_disp?:
report/report.c:596: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:596: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:601: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:601: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_chunksize_disp?:
report/report.c:611: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:611: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:616: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:616: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_pvused_disp?:
report/report.c:627: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:627: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:632: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:632: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_pvfree_disp?:
report/report.c:643: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:643: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:648: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:648: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_pvsize_disp?:
report/report.c:659: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:659: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:664: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:664: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_devsize_disp?:
report/report.c:672: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:672: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:677: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:677: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_vgfree_disp?:
report/report.c:684: warning: passing argument 1 of ?_size64_disp? from incompatible pointer type
report/report.c:684: warning: passing argument 3 of ?_size64_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:689: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:689: warning: ?struct dm_report? declared inside parameter list
report/report.c:709: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:709: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_uint32_disp?:
report/report.c:711: warning: implicit declaration of function ?dm_report_field_uint32?
report/report.c:711: warning: nested extern declaration of ?dm_report_field_uint32?
report/report.c: At top level:
report/report.c:716: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:716: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_int32_disp?:
report/report.c:718: warning: implicit declaration of function ?dm_report_field_int32?
report/report.c:718: warning: nested extern declaration of ?dm_report_field_int32?
report/report.c: At top level:
report/report.c:723: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:723: warning: ?struct dm_report? declared inside parameter list
report/report.c: In function ?_lvsegcount_disp?:
report/report.c:730: warning: passing argument 1 of ?_uint32_disp? from incompatible pointer type
report/report.c:730: warning: passing argument 3 of ?_uint32_disp? from incompatible pointer type
report/report.c: At top level:
report/report.c:735: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:735: warning: ?struct dm_report? declared inside parameter list
report/report.c:785: warning: ?struct dm_report_field? declared inside parameter list
report/report.c:785: warning: ?struct dm_report? declared inside parameter list
report/report.c:856: error: array type has incomplete element type
report/report.c:873: error: array type has incomplete element type
In file included from report/report.c:874:
report/columns.h:21: error: ?DM_REPORT_FIELD_TYPE_STRING? undeclared here (not in a function)
report/columns.h:24: error: ?DM_REPORT_FIELD_TYPE_NUMBER? undeclared here (not in a function)
report/report.c: In function ?report_init?:
report/report.c:889: error: ?DM_REPORT_OUTPUT_ALIGNED? undeclared (first use in this function)
report/report.c:889: error: (Each undeclared identifier is reported only once
report/report.c:889: error: for each function it appears in.)
report/report.c:892: error: ?DM_REPORT_OUTPUT_BUFFERED? undeclared (first use in this function)
report/report.c:895: error: ?DM_REPORT_OUTPUT_HEADINGS? undeclared (first use in this function)
report/report.c:897: warning: implicit declaration of function ?dm_report_init?
report/report.c:897: warning: nested extern declaration of ?dm_report_init?
report/report.c:898: warning: return makes pointer from integer without a cast
report/report.c: In function ?report_object?:
report/report.c:916: warning: implicit declaration of function ?dm_report_object?
report/report.c:916: warning: nested extern declaration of ?dm_report_object?
make[1]: *** [report/report.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory `/root/lvm2/LVM2.2.02.22/lib'
make: *** [lib] Error 2

Signature · 2 lines
Tomasz Chmielewski
http://wpkg.org
#8 lore raw
Quoted 21 lines · Tomasz Chmielewski
Quoted 7 lines · Tomasz Chmielewski
Quoted 6 lines · Alasdair G Kergon
Quoted 4 lines · Luca Berra
Quoted 1 line · Tomasz Chmielewski

BTW, the machine is running Debian etch (ARM port).

mmm i don't have an arm maybe this is the issue why lvm does not understand that sda2 is a md component?!?

Quoted 6 lines
Quoted 2 lines

I've not followed this thread, but you must use version 2.02.21 or later for the ARM architecture with md (or backport the patch).

Hmm, I must try that.

I'll let the list know in a week or so.

Hmm, I can't compile that:

(...)
gcc -c -I. -I../include -DHAVE_CONFIG_H -fPIC -Wall -Wundef -Wshadow

(quoted diff) +0 -2
-Wcast-align -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations 
-Wnested-externs -Winline -Wmissing-noreturn -O2 striped/striped.c -o 
Quoted 2 lines

striped/striped.o
report/report.c:67: warning: ?struct dm_report_field? declared inside parameter list

Did you update device-mapper as well?

Anyway the patch to support both endian versions of the md superblock is very small and can be applied to lvm earlier than 2.02.21

http://sources.redhat.com/cgi-bin/cvsweb.cgi/LVM2/lib/device/dev-md.c.diff?r1=1.3&r2=1.4&cvsroot=lvm2

L.

Signature · 6 lines
Luca Berra -- [email protected]
       Communication Media & Services S.r.l.
/"\
\ /     ASCII RIBBON CAMPAIGN
 X        AGAINST HTML MAIL
/ \
#9 lore raw
Quoted 26 lines · Luca Berra
Quoted 22 lines · Tomasz Chmielewski
Quoted 7 lines · Tomasz Chmielewski
Quoted 6 lines · Alasdair G Kergon
Quoted 4 lines · Luca Berra
Quoted 1 line · Tomasz Chmielewski

BTW, the machine is running Debian etch (ARM port).

mmm i don't have an arm maybe this is the issue why lvm does not understand that sda2 is a md component?!?

Quoted 6 lines
Quoted 2 lines

I've not followed this thread, but you must use version 2.02.21 or later for the ARM architecture with md (or backport the patch).

Hmm, I must try that.

I'll let the list know in a week or so.

Hmm, I can't compile that:

(...)
gcc -c -I. -I../include -DHAVE_CONFIG_H -fPIC -Wall -Wundef -Wshadow

(quoted diff) +0 -3
-Wcast-align -Wwrite-strings -Wmissing-prototypes 
-Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn 
-O2 striped/striped.c -o striped/striped.o
Quoted 1 line

report/report.c:67: warning: ?struct dm_report_field? declared inside parameter list

Did you update device-mapper as well?

Quoted 4 lines

Anyway the patch to support both endian versions of the md superblock is very small and can be applied to lvm earlier than 2.02.21

http://sources.redhat.com/cgi-bin/cvsweb.cgi/LVM2/lib/device/dev-md.c.diff?r1=1.3&r2=1.4&cvsroot=lvm2

Curiously, I updated lvm to Debian's 2.02.06-3, rebooted (machine was in a rather weird state), and the issue is gone.

With Debian's libdevmapper-dev 1.02.08-1 it doesn't compile; I didn't try to upgrade it anymore.

Signature · 1 line
Tomasz Chmielewski
#10 lore raw

Tomasz Chmielewski schrieb:

(...)

Quoted 3 lines

Curiously, I updated lvm to Debian's 2.02.06-3, rebooted (machine was in a rather weird state), and the issue is gone.

With Debian's libdevmapper-dev 1.02.08-1 it doesn't compile; I didn't try to upgrade it anymore.

As described in another post from today ("moving logical volumes to another system *remotely* - how?"), perhaps the issue had nothing to do with lvm tools, but with kernel?

I use 2.6.17.8 on that ARM machine, the kernel oopses after I create a snapshot, invalidate it (make it full), and try to remove it.

I'll try to upgrade to a newest stable kernel to see if anything changed (it will take some time, though).

Signature · 2 lines
Tomasz Chmielewski
http://wpkg.org