Remove HDIO_GETGEO_BIG which is dead (removed from 2.6) and was pointless back
in 2.4 (it fetched the same hd_geometry struct only with uint cylinders instead of ushort cylinders: nothing that big has ever accurately reported gemoetry, it's all LBA. Also stop declaring the hd_geometry struct static: it's two chars, a short, and a long for a grand total of 8 bytes. That can go on the stack.
This commit is contained in:
parent
0f0b645f73
commit
2584e9b39f
@ -2143,21 +2143,13 @@ static void process_dev(char *devname)
|
|||||||
}
|
}
|
||||||
if (verbose || get_geom)
|
if (verbose || get_geom)
|
||||||
{
|
{
|
||||||
static const char msg[] = " geometry = %u/%u/%u, sectors = %ld, start = %ld\n";
|
|
||||||
static struct hd_geometry g;
|
|
||||||
#ifdef HDIO_GETGEO_BIG
|
|
||||||
static struct hd_big_geometry bg;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!bb_ioctl(fd, BLKGETSIZE, &parm, "BLKGETSIZE"))
|
if (!bb_ioctl(fd, BLKGETSIZE, &parm, "BLKGETSIZE"))
|
||||||
{
|
{
|
||||||
#ifdef HDIO_GETGEO_BIG
|
struct hd_geometry g;
|
||||||
if (!bb_ioctl(fd, HDIO_GETGEO_BIG, &bg, "HDIO_GETGEO_BIG"))
|
|
||||||
printf(msg, bg.cylinders, bg.heads, bg.sectors, parm, bg.start);
|
|
||||||
else
|
|
||||||
#endif
|
|
||||||
if (!bb_ioctl(fd, HDIO_GETGEO, &g, "HDIO_GETGEO"))
|
if (!bb_ioctl(fd, HDIO_GETGEO, &g, "HDIO_GETGEO"))
|
||||||
printf(msg, g.cylinders, g.heads, g.sectors, parm, g.start);
|
printf(" geometry = %u/%u/%u, sectors = %ld, start = %ld\n",
|
||||||
|
g.cylinders, g.heads, g.sectors, parm, g.start);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifdef HDIO_DRIVE_CMD
|
#ifdef HDIO_DRIVE_CMD
|
||||||
|
Loading…
Reference in New Issue
Block a user