Commit e9926b43 authored by Akinobu Mita's avatar Akinobu Mita Committed by James Bottomley

[SCSI] scsi_debug: invalidate protection info for unmapped region

When UNMAP command is issued with the data integrity support enabled,
the protection info for the unmapped region is remain unchanged.
So READ command for the region later on causes data integrity failure.

This fixes it by invalidating protection info for the unmapped region
by filling with 0xff pattern.
Signed-off-by: default avatarAkinobu Mita <akinobu.mita@gmail.com>
Acked-by: default avatarDouglas Gilbert <dgilbert@interlog.com>
Acked-by: default avatar"Martin K. Petersen" <martin.petersen@oracle.com>
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent 7cb69d03
...@@ -2064,6 +2064,11 @@ static void unmap_region(sector_t lba, unsigned int len) ...@@ -2064,6 +2064,11 @@ static void unmap_region(sector_t lba, unsigned int len)
scsi_debug_sector_size * scsi_debug_sector_size *
scsi_debug_unmap_granularity); scsi_debug_unmap_granularity);
} }
if (dif_storep) {
memset(dif_storep + lba, 0xff,
sizeof(*dif_storep) *
scsi_debug_unmap_granularity);
}
} }
lba = map_index_to_lba(index + 1); lba = map_index_to_lba(index + 1);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment