TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Vitus Jensen
from: David Noon
date: 2003-11-16 19:49:02
subject: IORB_GEOMETRY, PDSK_GETPHYSDEVICEPARAMS and 32 bit sizes

Hi Vitus,

Replying to a message of Vitus Jensen to All:

 VJ> Looking at OS2DASD.DMD source this shouldn't be a problem but when
 VJ> this information is passed to LVM I find only the IOCtl
 VJ> PDSK_GETPHYSDEVICEPARAMS.  This IOCtl uses a 16 bit value for Number
 VJ> of Cylinders...

That's correct. Remember that that particular IOCtl dates back to the days
of MS-OS/2, so it is wall-to-wall 16-bit, even though the underlying code
is nowadays 32-bit.

 VJ> Is my analysis correct?  There is no other IOCtl, Cylinders have to be
 VJ> less than 65536?

Look at the OEMHLP_QUERYDISKINFO IOCtl, documented in ADDENDUM.INF. This
allocates a DWORD for cylinder count in its data packet, thus allowing over
4 billion cylinders. Just be aware that the information for this query is
cached from a BIOS interrupt before the kernel switches to protected mode.
This means that you will need a fairly recent BIOS (and SCSI BIOS, if your
array is on SCSI disks) to allow the system to collect the data.

Regards

Dave


--- FleetStreet 1.25.1
* Origin: My other computer is an IBM S/390 (2:257/609.5)
SEEN-BY: 633/267 270
@PATH: 257/609 250/501 140/1 106/2000 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.