From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1JNYmG-00023Z-Mf for mharc-grub-devel@gnu.org; Fri, 08 Feb 2008 14:20:48 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JNYmE-00023S-Rk for grub-devel@gnu.org; Fri, 08 Feb 2008 14:20:46 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JNYmC-00022x-4V for grub-devel@gnu.org; Fri, 08 Feb 2008 14:20:46 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JNYmB-00022u-W1 for grub-devel@gnu.org; Fri, 08 Feb 2008 14:20:44 -0500 Received: from crypt.ethx.net ([82.165.27.140]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JNYm7-0002Ee-K0; Fri, 08 Feb 2008 14:20:39 -0500 Received: from 79-66-149-248.dynamic.dsl.as9105.com ([79.66.149.248] helo=xerces) by crypt.ethx.net with esmtpsa (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.63) (envelope-from ) id 1JNYm4-0006F1-Mf; Fri, 08 Feb 2008 19:20:37 +0000 Received: from sam by xerces with local (Exim 4.68) (envelope-from ) id 1JNYlz-0004cy-RE; Fri, 08 Feb 2008 19:20:31 +0000 From: Sam Morris To: Robert Millan In-Reply-To: <20080208145236.GA19517@thorin> References: <20080206211840.GA13360@thorin> <20080206231401.GA17655@thorin> <20080208145236.GA19517@thorin> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="=-ls17r75JYgbhc6c71mUC" Date: Fri, 08 Feb 2008 19:20:31 +0000 Message-Id: <1202498431.5332.3.camel@xerces> Mime-Version: 1.0 X-Mailer: Evolution 2.12.3 X-Spam-Bars: ++ X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: grub-devel@gnu.org, Thomas Wendt , Jan Nieuwenhuizen Subject: Re: [PATCH] fix for partmap detection on RAID/LVM X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GRUB 2 List-Id: The development of GRUB 2 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Feb 2008 19:20:47 -0000 --=-ls17r75JYgbhc6c71mUC Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On Fri, 2008-02-08 at 15:52 +0100, Robert Millan wrote: > New patch to fix partmap detection in LVM/RAID. Changes in comparison to > previous patch: (gdb) run -t partmap /boot/grub/ Starting program: /home/sam/grub/grub2/grub-probe -t partmap /boot/= grub/ =20 Program received signal SIGSEGV, Segmentation fault. 0x0806035a in grub_raid_scan_device (name=3D0x806b080 "hd3,2") at d= isk/raid.c:442 442 if (array->device[sb.this_disk.number]->name !=3D 0) =20 (gdb) print array $1 =3D (struct grub_raid_array *) 0x806f1f8 =20 (gdb) print array->device $2 =3D {0x806b118, 0x0 } =20 (gdb) print sb.this_disk.number $3 =3D 1 =20 (gdb) bt full #0 0x0806035a in grub_raid_scan_device (name=3D0x806b080 "hd3,2") at disk/raid.c:442 err =3D disk =3D size =3D 578415649617870848 sb =3D {md_magic =3D 2838187772, major_version =3D 0, minor_versio= n =3D 90,=20 patch_version =3D 3, gvalid_words =3D 0, set_uuid0 =3D 395026485,= =20 ctime =3D 1139358627, level =3D 1, size =3D 292519488, nr_disks = =3D 2,=20 raid_disks =3D 2, md_minor =3D 0, not_persistent =3D 0, set_uuid1= =3D 2852015029,=20 set_uuid2 =3D 1808090526, set_uuid3 =3D 3461511789, gstate_creser= ved =3D { 0 }, utime =3D 1202498002, state =3D 1, activ= e_disks =3D 2,=20 working_disks =3D 2, failed_disks =3D 0, spare_disks =3D 0, sb_cs= um =3D 1132908899,=20 events_lo =3D 14301400, events_hi =3D 0, cp_events_lo =3D 1430140= 0,=20 cp_events_hi =3D 0, recovery_cp =3D 4294967295, gstate_sreserved = =3D { 0 }, layout =3D 0, chunk_size =3D 0, root_pv = =3D 0,=20 root_block =3D 0, pstate_reserved =3D {0 }, dis= ks =3D {{ number =3D 0, major =3D 3, minor =3D 66, raid_disk =3D 0, sta= te =3D 6, reserved =3D { 0 }}, {number =3D 1, major =3D 34, minor = =3D 2,=20 raid_disk =3D 1, state =3D 6, reserved =3D {0 }}, { number =3D 0, major =3D 0, minor =3D 0, raid_disk =3D 0, stat= e =3D 0, reserved =3D { 0 }} }, reserved =3D 0x= bfb8175c,=20 this_disk =3D {number =3D 1, major =3D 34, minor =3D 2, raid_disk= =3D 1, state =3D 6,=20 reserved =3D {0 }}} p =3D (struct grub_raid_array *) 0x806f1f8 array =3D (struct grub_raid_array *) 0x806f1f8 #1 0x0804b69e in iterate_partition (disk=3D0x806b008, partition=3D= 0xbfb81b94) at kern/device.c:132 partition_name =3D 0x806f378 "\001" ret =3D 1 hook =3D (int (*)(const char *)) 0x80601c0 #2 0x0805cd0c in pc_partition_map_iterate (disk=3D0x806b008, hook= =3D0xbfb81c9e) at partmap/pc.c:153 i =3D e =3D (struct grub_pc_partition_entry *) 0xbfb81a2a p =3D {start =3D 1060290, len =3D 585039105, offset =3D 0, index = =3D 1,=20 data =3D 0xbfb81bb8, partmap =3D 0x8063a1c} pcdata =3D {dos_part =3D 1, bsd_part =3D -1, dos_type =3D 253, bsd= _type =3D -1,=20 ext_offset =3D 0} mbr =3D { code =3D "=EF=BF=BD=EF=BF=BD\000\020\216=D0=BC\000=EF=BF=BD=EF=BF= =BD\000\000\216=EF=BF=BD\216=EF=BF=BD=EF=BF=BD=EF=BF=BD\000|=EF=BF=BD\000\0= 06=EF=BF=BD\000\002=EF=BF=BD=EF=BF=BD=EF=BF=BD!\006\000\000=EF=BF=BD=EF=BF= =BD\a8\004u\v\203=EF=BF=BD\020\201=EF=BF=BD=EF=BF=BD\au=EF=BF=BD=EF=BF=BD\0= 26=EF=BF=BD\002=EF=BF=BD\001=EF=BF=BD\000|=EF=BF=BD\200\212t\001\213L\002= =EF=BF=BD\023=EF=BF=BD\000|\000\000=EF=BF=BD=EF=BF=BD", '\0' , "\204=EF=BF=BD\002\000\000",=20 entries =3D {{flag =3D 0 '\0', start_head =3D 1 '\001', start_sec= tor =3D 1 '\001',=20 start_cylinder =3D 0 '\0', type =3D 130 '\202', end_head =3D = 254 '=EF=BF=BD',=20 end_sector =3D 63 '?', end_cylinder =3D 65 'A', start =3D 63,= =20 length =3D 1060227}, {flag =3D 0 '\0', start_head =3D 0 '\0',= =20 start_sector =3D 1 '\001', start_cylinder =3D 66 'B', type = =3D 253 ' end_head =3D 254 '=EF=BF=BD', end_sector =3D 255 '=EF=BF=BD',= end_cylinder =3D 255 '=EF=BF=BD',=20 start =3D 1060290, length =3D 585039105}, {flag =3D 0 '\0',=20 start_head =3D 0 '\0', start_sector =3D 0 '\0', start_cylinde= r =3D 0 '\0',=20 type =3D 0 '\0', end_head =3D 0 '\0', end_sector =3D 0 '\0',=20 end_cylinder =3D 0 '\0', start =3D 0, length =3D 0}, {flag = =3D 0 '\0',=20 start_head =3D 0 '\0', start_sector =3D 0 '\0', start_cylinde= r =3D 0 '\0',=20 type =3D 0 '\0', end_head =3D 0 '\0', end_sector =3D 0 '\0',=20 end_cylinder =3D 0 '\0', start =3D 0, length =3D 0}}, signatu= re =3D 43605} label =3D {magic =3D 0, padding =3D '\0' , magi= c2 =3D 0,=20 checksum =3D 0, num_partitions =3D 0, boot_size =3D 0, superblock= _size =3D 0,=20 entries =3D {{size =3D 0, offset =3D 0, fragment_size =3D 0, fs_t= ype =3D 0 '\0',=20 fs_fragments =3D 0 '\0', fs_cylinders =3D 0}, {size =3D 0, of= fset =3D 0,=20 fragment_size =3D 0, fs_type =3D 0 '\0', fs_fragments =3D 0 '= \0',=20 fs_cylinders =3D 0}, {size =3D 0, offset =3D 0, fragment_size= =3D 0,=20 fs_type =3D 0 '\0', fs_fragments =3D 0 '\0', fs_cylinders =3D= 0}, { size =3D 134656064, offset =3D 134625056, fragment_size =3D 3= 216513864,=20 fs_type =3D 255 '=EF=BF=BD', fs_fragments =3D 225 '=EF=BF=BD'= , fs_cylinders =3D 2053}, { size =3D 128, offset =3D 131, fragment_size =3D 0, fs_type = =3D 0 '\0',=20 fs_fragments =3D 0 '\0', fs_cylinders =3D 0}, {size =3D 13462= 5820,=20 offset =3D 3216514036, fragment_size =3D 3216513880, fs_type = =3D 158 '\236',=20 fs_fragments =3D 227 '=EF=BF=BD', fs_cylinders =3D 2053}, {si= ze =3D 0, offset =3D 0,=20 fragment_size =3D 3216513928, fs_type =3D 131 '\203',=20 fs_fragments =3D 220 '=EF=BF=BD', fs_cylinders =3D 2052}, {si= ze =3D 134615777,=20 offset =3D 134625820, fragment_size =3D 0, fs_type =3D 255 '= =EF=BF=BD',=20 fs_fragments =3D 255 '=EF=BF=BD', fs_cylinders =3D 65535}}} raw =3D {name =3D 0x806b040 "hd3", dev =3D 0x8063720,=20 total_sectors =3D 586114704, has_partitions =3D 128, id =3D 131, = partition =3D 0x0,=20 read_hook =3D 0, data =3D 0x0} #3 0x0804e1bf in grub_partition_iterate (hook=3D0xbfb81c9e) at kern/partition.c:126 ret =3D partmap =3D (grub_partition_map_t) 0x8063a1c disk =3D (struct grub_disk *) 0x806b008 #4 0x0804b812 in iterate_disk (disk_name=3D0xbfb81c42 "hd3") at kern/device.c:101 dev =3D (grub_device_t) 0x806b030 hook =3D (int (*)(const char *)) 0x80601c0 #5 0x08049810 in grub_util_biosdisk_iterate (hook=3D0xbfb81c94) at util/biosdisk.c:131 i =3D 131 #6 0x0804b914 in grub_disk_dev_iterate (hook=3D0xbfb81c94) at kern= /disk.c:205 p =3D (grub_disk_dev_t) 0x8063720 #7 0x0804b614 in grub_device_iterate (hook=3D0x80601c0 ) at kern/device.c:138 No locals. #8 0x0805f9e2 in grub_mod_init (mod=3D0x0) at disk/raid.c:563 No locals. #9 0x0805fa02 in grub_raid_init () at disk/raid.c:561 No locals. #10 0x0804927c in main (argc=3DCannot access memory at address 0xa9= fe4bb5 ) at util/grub-probe.c:338 c =3D dev_map =3D 0x0 path =3D 0xbfb83bd7 "/boot/grub/" =20 I'll debug this further later if you don't know why it happened. --=20 Sam Morris http://robots.org.uk/ PGP key id 1024D/5EA01078 3412 EA18 1277 354B 991B C869 B219 7FDB 5EA0 1078 --=-ls17r75JYgbhc6c71mUC Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQBHrKt/shl/216gEHgRAkPfAKDLyMGoHK3fLvdfj3AJYwEx4j75jgCfUF9I OOdZizEtaQoZKeAZ1ovluoY= =GwRw -----END PGP SIGNATURE----- --=-ls17r75JYgbhc6c71mUC--