• Tejun Heo's avatar
    libata: implement on-demand HPA unlocking · d8d9129e
    Tejun Heo authored
    Implement ata_scsi_unlock_native_capacity() which will be called
    through SCSI layer when block layer notices that partitions on a
    device extend beyond the end of the device.  It requests EH to unlock
    HPA, waits for completion and returns the current device capacity.
    
    This allows libata to unlock HPA on demand instead of having to decide
    whether to unlock upfront.  Unlocking on demand is safer than
    unlocking by upfront because some BIOSes write private data to the
    area beyond HPA limit.  This was suggested by Ben Hutchings.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Suggested-by: default avatarBen Hutchings <ben@decadent.org.uk>
    Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
    d8d9129e
libata-core.c 173 KB