s390/partitions: make partition detection independent from DASD ioctls
authorStefan Weinhuber <wein@de.ibm.com>
Fri, 31 Aug 2012 08:52:13 +0000 (10:52 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Wed, 26 Sep 2012 13:45:05 +0000 (15:45 +0200)
commit46e8894786327caf52cf686e27ba0795bddfcd63
tree3f5ccb1fbad4e29915ed028063eed7ed6bbe30ba
parent3d5787c9976889bcf26cbd8f3124b91678a33275
s390/partitions: make partition detection independent from DASD ioctls

In some usage scenarios it is desireable to work with disk images or
virtualized DASD devices. One problem that prevents such applications
is the partition detection in ibm.c. Currently it works only for
devices that support the BIODASDINFO2 ioctl, in other words, it only
works for devices that belong to the DASD device driver.

The information gained from the BIODASDINFO2 ioctl is only for a small
set of legacy cases abolutely necessary. All current VOL1, LNX1 and
CMS1 type of disk labels can be interpreted correctly without this
information, as long as the generic HDIO_GETGEO ioctl works and
provides a correct disk geometry.

This patch makes the ibm.c partition detection as independent as
possible from the BIODASDINFO2 ioctl. Only the following two cases are
still restricted to real DASDs:
- An FBA DASD, or LDL formatted ECKD DASD without any disk label.
- An old style LNX1 label (without large volume support) on a disk
  with inconsistent device geometry.

Signed-off-by: Stefan Weinhuber <wein@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
block/partitions/ibm.c