Shidokht Yadegari wrote:
> Hi Sanjay,
>
> I would not suggest checking the size of slice 2 against 1TB to decide 
> whether we
> need to use the new interfaces or not. If the disk is larger than 1TB 
> (in capacity), we
> need to use the new  interfaces.  I believe checking slice 2's size 
> instead of real capacity of the
> disk can cause failures on disks larger than 1 TB but with a vtoc 
> limited to 1TB in size, e.g
> disk > 1TB with a Solaris fdisk partition that is  < 1TB.
At line 1663 the DKIOCGGEOM is called to get the geometry of the desk.  
Then at  line 1718 slice 2 is set to capacity of the entire drive  based 
on geometry of  the disk.  Wouldn't that cover the case you are 
concerned about or should we be instead
calling DKIOCG_PHYGEOM ?

>
> Also when checking against 1TB, I'd suggest considering the case of == 
> 0x80000000
> same as larger than 1TB. The whole vtoc vs extvtoc is really about the 
> sign bit in size/start...
>
Ok.  So the check should be < (uint32_t)(0x80000000) ?

-Sanjay

> Thanks
> --shidokht
>
>
> Sanjay Nadkarni wrote:
>>
>> Please review this blocker for bug.
>>
>> http://cr.opensolaris.org/~nadkarni/bugfix5106/webrev/
>>
>> -Sanjay
>>
>


Reply via email to