Changeset 141
- Timestamp:
- 05/16/06 09:44:49 (3 years ago)
- Files:
-
- trunk/client/revimage/lvm.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/client/revimage/lvm.c
r75 r141 73 73 { 74 74 __u64 off; 75 int state = 0 ;76 int pe_count = 0, extent = 0;75 int state = 0, pe_count = 0, extent = 0; 76 __u64 *pv; 77 77 78 78 /* lvm2 */ 79 /* buf[128] = label_header */ 79 80 if (buf[128] != 0x4542414C || buf[129] != 0x454E4F4C) 80 81 { … … 88 89 return; 89 90 } 90 fseek(fi, 0x800, SEEK_SET); 91 /* buf[133] = label_header.offset_xl */ 92 /* pv_header */ 93 pv = (__u64 *)(((__u8 *)&buf[128]) + buf[133]); 94 debug("LVM2 pv UUID: %32s\n", (char *)pv); 95 /* skip data */ 96 pv += 5; 97 while (*pv) { 98 pv += 2; 99 } 100 pv += 2; 101 debug("LVM2: Mdh offset: 0x%llX\n", *pv); 102 fseek(fi, *pv, SEEK_SET); 91 103 fread(buf, 128*4, 1, fi); 92 104 if (strncmp((char *)&buf[1], (char *)FMTT_MAGIC, 16)) … … 98 110 off = buf[10] + ((__u64)buf[11] << 32); 99 111 debug("LVM2: Meta offset: 0x%llX\n", off); 112 if (off == 0) return; 100 113 off += 0x800; 101 114 fseek(fi, off, SEEK_SET);
