HDIO_GETGEO vs. BLKGETSIZE

Andries Brouwer aeb at veritas.com
Mon May 22 10:17:56 EDT 2000


On Mon, May 22, 2000 at 01:06:17PM +0100, David Woodhouse wrote:

> Is it permitted for a driver to returns CHS values for HDIO_GETGEO which, 
> when multiplied together, don't match the value returned by BLKGETSIZE?

Yes - HDIO_GETGEO may contain whatever you want.
A modern fdisk will use the values for heads and sectors/track
given by HDIO_GETGEO, but ignore the value for cylinders.

Indeed, since cylinders is a 16-bit field and the number of cylinders
can be larger than 65535, the value may be truncated, and is to be
considered worthless.

Instead, the number of cylinders is computed as BLKGETSIZE/(H*S).
(Thus, there is no need for a new ioctl HDIO_GETBIGGEO or so.
I think the code for it should be deleted from the kernel.)

Andries


To unsubscribe, send "unsubscribe mtd" to majordomo at infradead.org



More information about the linux-mtd mailing list