linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] scsi_debug: fix logical block provisioning support
@ 2013-04-16 13:11 Akinobu Mita
  2013-04-16 13:11 ` [PATCH 1/6] scsi_debug: call map_region() and unmap_region() only when needed Akinobu Mita
                   ` (6 more replies)
  0 siblings, 7 replies; 15+ messages in thread
From: Akinobu Mita @ 2013-04-16 13:11 UTC (permalink / raw)
  To: linux-scsi
  Cc: Akinobu Mita, James E.J. Bottomley, Douglas Gilbert,
	Martin K. Petersen

I tried testing the logical block provisioning support in scsi_debug,
but it didn't work as I expected.

For example, load scsi_debug module with UNMAP command supported
and fill the storage with random data.

	# modprobe scsi_debug lbpu=1
	# dd if=/dev/urandom of=/dev/sdb

Then, try to unmap LBA 0, but Get LBA status reports:

	# sg_unmap --lba=0 --num=1 /dev/sdb
	# sg_get_lba_status --lba=0 /dev/sdb
	descriptor LBA: 0x0000000000000000  blocks: 16384  mapped

This is unexpected result.  Because UNMAP command to LBA 0 finished
without any errors, but Get LBA status shows that LBA 0 is still mapped.

I looked around the logical block provisioning support in scsi_debug,
and I found several problems there.  This patch series tries to fix
these problems and it is broken into small patches as much as possible
for ease of review.

Cc: "James E.J. Bottomley" <JBottomley@parallels.com>
Cc: linux-scsi@vger.kernel.org
Cc: Douglas Gilbert <dgilbert@interlog.com>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>

Akinobu Mita (6):
  scsi_debug: call map_region() and unmap_region() only when needed
  scsi_debug: prohibit scsi_debug_unmap_granularity ==
    scsi_debug_unmap_alignment
  scsi_debug: clear correct memory region when LBPRZ is enabled
  scsi_debug: add translation functions between LBA and index of
    provisioning map
  scsi_debug: fix initialization of provisioning map
  scsi_debug: fix logical block provisioning support

 drivers/scsi/scsi_debug.c | 97 ++++++++++++++++++++++++-----------------------
 1 file changed, 50 insertions(+), 47 deletions(-)

-- 
1.8.1.4


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2013-05-02 22:50 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-16 13:11 [PATCH 0/6] scsi_debug: fix logical block provisioning support Akinobu Mita
2013-04-16 13:11 ` [PATCH 1/6] scsi_debug: call map_region() and unmap_region() only when needed Akinobu Mita
2013-04-25  1:59   ` Martin K. Petersen
2013-04-16 13:11 ` [PATCH 2/6] scsi_debug: prohibit scsi_debug_unmap_granularity == scsi_debug_unmap_alignment Akinobu Mita
2013-04-25  1:37   ` Martin K. Petersen
2013-04-16 13:11 ` [PATCH 3/6] scsi_debug: clear correct memory region when LBPRZ is enabled Akinobu Mita
2013-04-25  1:42   ` Martin K. Petersen
2013-04-16 13:11 ` [PATCH 4/6] scsi_debug: add translation functions between LBA and index of provisioning map Akinobu Mita
2013-04-25  1:43   ` Martin K. Petersen
2013-05-02 22:50   ` James Bottomley
2013-04-16 13:11 ` [PATCH 5/6] scsi_debug: fix initialization " Akinobu Mita
2013-04-25  1:44   ` Martin K. Petersen
2013-04-16 13:12 ` [PATCH 6/6] scsi_debug: fix logical block provisioning support Akinobu Mita
2013-04-25  1:46   ` Martin K. Petersen
2013-04-24 23:39 ` [PATCH 0/6] " Douglas Gilbert

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).