Hi Sanjay,

could I please ask you to review the fix for following bug ?

10448 Target Discovery dumps core on build >=119 in OS discovery if UFS 
Solaris instances are present

* Webrev:
http://cr.opensolaris.org/~dambi/bug-10448

Thank you very much,
Jan

Modules affected and tested:
* Target Discovery - libtd

tests carried out:
* Sanjay created LiveCD ISO images based on build 120 with and without
  fixed libtd - Mary did the tests:
  - system installed with Solaris on UFS, then GUI installer was tested:
    - GUI installer crashed on LiveCD w/o the fix
    - GUI installer didn't crash on LiveCD w/ the fix

* tested OS discovery with tdmgsts test driver with and without
  the fix

[1] w/o the fix - TD crashed:
-----------------------------

# /tmp/tdmgtst_static1 -d
Caiman Target Discovery test program - Version 4
disk discovery:
  2 found - getting attributes...
     disk 0)
           ddm_disk_size=143374737 (uint64)
           ddm_disk_block_size=512 (uint32)
           ddm_disk_mtype=1 (uint32)
           ddm_disk_nheads=255 (uint32)
           ddm_disk_nsectors=63 (uint32)
           ddm_disk_name=c2t2d0
           ddm_disk_currboot=yes
           ddm_disk_vendor_id=SEAGATE
           ddm_disk_product_id=ST973401LSUN72G
           ddm_disk_dev_id=/dev/rdsk/c2t2d0s0
           ddm_disk_ctype=scsi
           ddm_disk_label=5 (uint32)
     disk 1)
           ddm_disk_size=143374737 (uint64)
           ddm_disk_block_size=512 (uint32)
           ddm_disk_mtype=1 (uint32)
           ddm_disk_nheads=255 (uint32)
           ddm_disk_nsectors=63 (uint32)
           ddm_disk_name=c2t3d0
           ddm_disk_vendor_id=FUJITSU
           ddm_disk_product_id=MAY2073RCSUN72G
           ddm_disk_dev_id=/dev/rdsk/c2t3d0s0
           ddm_disk_ctype=scsi
           ddm_disk_label=5 (uint32)
partition discovery:
  2 found - getting attributes...
     partition 0)
           ddm_part_bootid=128 (uint32)
           ddm_part_type=191 (uint32)
           ddm_part_start=16065 (uint32)
           ddm_part_size=143347995 (uint32)
           ddm_part_name=c2t2d0p1
           ddm_part_content=0 (uint32)
     partition 1)
           ddm_part_bootid=0 (uint32)
           ddm_part_type=191 (uint32)
           ddm_part_start=16065 (uint32)
           ddm_part_size=143347995 (uint32)
           ddm_part_name=c2t3d0p1
           ddm_part_content=0 (uint32)
slice discovery:
  10 found - getting attributes...
     slice 0)
           ddm_slice_index=8 (uint32)
           ddm_slice_start=0 (uint64)
           ddm_slice_size=16065 (uint64)
           ddm_slice_tag=1 (uint32)
           ddm_slice_flag=1 (uint32)
           ddm_slice_devt=54526088 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/i
           ddm_slice_name=c2t2d0s8
           ddm_slice_lastmnt=
     slice 1)
           ddm_slice_index=7 (uint32)
           ddm_slice_start=28949130 (uint64)
           ddm_slice_size=114366735 (uint64)
           ddm_slice_tag=8 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526087 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/h
           ddm_slice_name=c2t2d0s7
           ddm_slice_lastmnt=/tmp/td_rootJkaOyb/export/home
     slice 2)
           ddm_slice_index=2 (uint32)
           ddm_slice_start=0 (uint64)
           ddm_slice_size=143315865 (uint64)
           ddm_slice_tag=5 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526082 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/c
           ddm_slice_name=c2t2d0s2
           ddm_slice_lastmnt=
     slice 3)
           ddm_slice_index=1 (uint32)
           ddm_slice_start=16065 (uint64)
           ddm_slice_size=1060290 (uint64)
           ddm_slice_tag=3 (uint32)
           ddm_slice_flag=1 (uint32)
           ddm_slice_devt=54526081 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/b
           ddm_slice_name=c2t2d0s1
           ddm_slice_lastmnt=
     slice 4)
           ddm_slice_index=0 (uint32)
           ddm_slice_start=1076355 (uint64)
           ddm_slice_size=27872775 (uint64)
           ddm_slice_tag=2 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526080 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/a
           ddm_slice_name=c2t2d0s0
           ddm_slice_lastmnt=/
     slice 5)
           ddm_slice_index=8 (uint32)
           ddm_slice_start=0 (uint64)
           ddm_slice_size=16065 (uint64)
           ddm_slice_tag=1 (uint32)
           ddm_slice_flag=1 (uint32)
           ddm_slice_devt=54526152 (uint64)
           ddm_slice_devid=id1,sd at n500000e01206b4c0/i
           ddm_slice_name=c2t3d0s8
           ddm_slice_lastmnt=/a
     slice 6)
           ddm_slice_index=7 (uint32)
           ddm_slice_start=16065 (uint64)
           ddm_slice_size=143299800 (uint64)
           ddm_slice_tag=8 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526151 (uint64)
           ddm_slice_devid=id1,sd at n500000e01206b4c0/h
           ddm_slice_name=c2t3d0s7
           ddm_slice_lastmnt=/tmp/td_rootJkaOyb/export/home0
     slice 7)
           ddm_slice_index=2 (uint32)
           ddm_slice_start=0 (uint64)
           ddm_slice_size=143315865 (uint64)
           ddm_slice_tag=5 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526146 (uint64)
           ddm_slice_devid=id1,sd at n500000e01206b4c0/c
           ddm_slice_name=c2t3d0s2
           ddm_slice_lastmnt=/a
     slice 8)
  [empty nvlist]
     slice 9)
  [empty nvlist]
Segmentation Fault (core dumped)


[2] w/ the fix - crash didn't occur, TD found Solaris instance
--------------------------------------------------------------

# /tmp/tdmgtst_static -d
Caiman Target Discovery test program - Version 4
disk discovery:
  2 found - getting attributes...
     disk 0)
           ddm_disk_size=143374737 (uint64)
           ddm_disk_block_size=512 (uint32)
           ddm_disk_mtype=1 (uint32)
           ddm_disk_nheads=255 (uint32)
           ddm_disk_nsectors=63 (uint32)
           ddm_disk_name=c2t2d0
           ddm_disk_currboot=yes
           ddm_disk_vendor_id=SEAGATE
           ddm_disk_product_id=ST973401LSUN72G
           ddm_disk_dev_id=/dev/rdsk/c2t2d0s0
           ddm_disk_ctype=scsi
           ddm_disk_label=5 (uint32)
     disk 1)
           ddm_disk_size=143374737 (uint64)
           ddm_disk_block_size=512 (uint32)
           ddm_disk_mtype=1 (uint32)
           ddm_disk_nheads=255 (uint32)
           ddm_disk_nsectors=63 (uint32)
           ddm_disk_name=c2t3d0
           ddm_disk_vendor_id=FUJITSU
           ddm_disk_product_id=MAY2073RCSUN72G
           ddm_disk_dev_id=/dev/rdsk/c2t3d0s0
           ddm_disk_ctype=scsi
           ddm_disk_label=5 (uint32)
partition discovery:
  2 found - getting attributes...
     partition 0)
           ddm_part_bootid=128 (uint32)
           ddm_part_type=191 (uint32)
           ddm_part_start=16065 (uint32)
           ddm_part_size=143347995 (uint32)
           ddm_part_name=c2t2d0p1
           ddm_part_content=0 (uint32)
     partition 1)
           ddm_part_bootid=0 (uint32)
           ddm_part_type=191 (uint32)
           ddm_part_start=16065 (uint32)
           ddm_part_size=143347995 (uint32)
           ddm_part_name=c2t3d0p1
           ddm_part_content=0 (uint32)
slice discovery:
  10 found - getting attributes...
     slice 0)
           ddm_slice_index=8 (uint32)
           ddm_slice_start=0 (uint64)
           ddm_slice_size=16065 (uint64)
           ddm_slice_tag=1 (uint32)
           ddm_slice_flag=1 (uint32)
           ddm_slice_devt=54526088 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/i
           ddm_slice_name=c2t2d0s8
           ddm_slice_lastmnt=
     slice 1)
           ddm_slice_index=7 (uint32)
           ddm_slice_start=28949130 (uint64)
           ddm_slice_size=114366735 (uint64)
           ddm_slice_tag=8 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526087 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/h
           ddm_slice_name=c2t2d0s7
           ddm_slice_lastmnt=/tmp/td_rootJkaOyb/export/home
     slice 2)
           ddm_slice_index=2 (uint32)
           ddm_slice_start=0 (uint64)
           ddm_slice_size=143315865 (uint64)
           ddm_slice_tag=5 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526082 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/c
           ddm_slice_name=c2t2d0s2
           ddm_slice_lastmnt=
     slice 3)
           ddm_slice_index=1 (uint32)
           ddm_slice_start=16065 (uint64)
           ddm_slice_size=1060290 (uint64)
           ddm_slice_tag=3 (uint32)
           ddm_slice_flag=1 (uint32)
           ddm_slice_devt=54526081 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/b
           ddm_slice_name=c2t2d0s1
           ddm_slice_lastmnt=
     slice 4)
           ddm_slice_index=0 (uint32)
           ddm_slice_start=1076355 (uint64)
           ddm_slice_size=27872775 (uint64)
           ddm_slice_tag=2 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526080 (uint64)
           
ddm_slice_devid=id1,sd at 
SSEAGATE_ST973401LSUN72G_0210C8HQ____________3LB0C8HQ/a
           ddm_slice_name=c2t2d0s0
           ddm_slice_lastmnt=/
     slice 5)
           ddm_slice_index=8 (uint32)
           ddm_slice_start=0 (uint64)
           ddm_slice_size=16065 (uint64)
           ddm_slice_tag=1 (uint32)
           ddm_slice_flag=1 (uint32)
           ddm_slice_devt=54526152 (uint64)
           ddm_slice_devid=id1,sd at n500000e01206b4c0/i
           ddm_slice_name=c2t3d0s8
           ddm_slice_lastmnt=/a
     slice 6)
           ddm_slice_index=7 (uint32)
           ddm_slice_start=16065 (uint64)
           ddm_slice_size=143299800 (uint64)
           ddm_slice_tag=8 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526151 (uint64)
           ddm_slice_devid=id1,sd at n500000e01206b4c0/h
           ddm_slice_name=c2t3d0s7
           ddm_slice_lastmnt=/tmp/td_rootJkaOyb/export/home0
     slice 7)
           ddm_slice_index=2 (uint32)
           ddm_slice_start=0 (uint64)
           ddm_slice_size=143315865 (uint64)
           ddm_slice_tag=5 (uint32)
           ddm_slice_flag=0 (uint32)
           ddm_slice_devt=54526146 (uint64)
           ddm_slice_devid=id1,sd at n500000e01206b4c0/c
           ddm_slice_name=c2t3d0s2
           ddm_slice_lastmnt=/a
     slice 8)
  [empty nvlist]
     slice 9)
  [empty nvlist]
Solaris instance discovery:
  1 found - getting attributes...
     Solaris instance 0)
           os_version=Solaris_11
           os_slice_name=c2t2d0s0
           os_build_id=snv_115
releasing resources...
finished.



Reply via email to