This section describes I/O standards used by ATA and SCSI devices.
ATA devices must report appropriate information via the
IDENTIFY DEVICE command. ATA devices only report I/O parameters for
alignment_offset. The additional I/O hints are outside the scope of the ATA Command Set.
I/O parameters support in Red Hat Enterprise Linux 7 requires at least version 3 of the SCSI Primary Commands (SPC-3) protocol. The kernel will only send an extended inquiry (which gains access to the
BLOCK LIMITS VPD page) and
READ CAPACITY(16) command to devices which claim compliance with SPC-3.
READ CAPACITY(16) command provides the block sizes and alignment offset:
LOGICAL BLOCK LENGTH IN BYTES is used to derive
LOGICAL BLOCKS PER PHYSICAL BLOCK EXPONENT is used to derive
LOWEST ALIGNED LOGICAL BLOCK ADDRESS is used to derive:
BLOCK LIMITS VPD page (
0xb0) provides the I/O hints. It also uses
OPTIMAL TRANSFER LENGTH GRANULARITY and
OPTIMAL TRANSFER LENGTH to derive:
sg3_utils package provides the
sg_inq utility, which can be used to access the
BLOCK LIMITS VPD page. To do so, run:
# sg_inq -p 0xb0 disk