• Tejun Heo's avatar
    [PATCH] libata: sync result_tf.flags w/ command tf.flags · 39599a53
    Tejun Heo authored
    libata didn't initialize result_tf.flags which indicates transfer type
    (RW/FUA) and address type (CHS/LBA/LBA48).  ata_gen_fixed_sense()
    assumed result_tf.flags equals command tf.flags and failed to report
    the first failed block to SCSI layer because zero tf flags indicates
    CHS and bad block reporting for CHS is not implemented.
    
    Implement fill_result_tf() which sets result_tf.flags to command
    tf.flags and use it to fill result_tf.
    Signed-off-by: default avatarTejun Heo <htejun@gmail.com>
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
    39599a53
libata-core.c 152 KB