OSDN Git Service

nvme: set discard_alignment to zero
authorDavid Disseldorp <ddiss@suse.de>
Fri, 24 Nov 2017 15:30:53 +0000 (16:30 +0100)
committerChristoph Hellwig <hch@lst.de>
Fri, 15 Dec 2017 14:13:32 +0000 (15:13 +0100)
commitb224f6134d72e3493a023b5bea917f9a6beea0c8
tree9f9a631324126407916055efc58b878900993637
parentfcf38cdf332a81b20a59e3ebaea81f6b316bbe0c
nvme: set discard_alignment to zero

Similar to 7c084289795b ("rbd: set discard_alignment to zero"), NVMe
devices are currently incorrectly initialised with the block queue
discard_alignment set to the NVMe stream alignment.

As per Documentation/ABI/testing/sysfs-block:
  The discard_alignment parameter indicates how many bytes the beginning
  of the device is offset from the internal allocation unit's natural
  alignment.

Correcting the discard_alignment parameter to zero has no effect on how
discard requests are propagated through the block layer - @alignment in
__blkdev_issue_discard() remains zero. However, it does fix other
consumers, such as LIO's Block Limits VPD response.

Signed-off-by: David Disseldorp <ddiss@suse.de>
Reviewed-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/host/core.c