block: ensure discard_granularity is zero when discard is not supported
authorChristoph Hellwig <hch@lst.de>
Thu, 31 Jul 2025 15:22:28 +0000 (08:22 -0700)
committerJens Axboe <axboe@kernel.dk>
Thu, 31 Jul 2025 21:01:35 +0000 (15:01 -0600)
commitfad6551fcf537375702b9af012508156a16a1ff7
tree7efc2aacb38c41f020b4c99e759e66e2f0a84f5e
parent765761851d89c772f482494d452e266795460278
block: ensure discard_granularity is zero when discard is not supported

Documentation/ABI/stable/sysfs-block states:

  What: /sys/block/<disk>/queue/discard_granularity
  [...]
  A discard_granularity of 0 means that the device does not support
  discard functionality.

but this got broken when sorting out the block limits updates.  Fix this
by setting the discard_granularity limit to zero when the combined
max_discard_sectors is zero.

Fixes: 3c407dc723bb ("block: default the discard granularity to sector size")
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Link: https://lore.kernel.org/r/20250731152228.873923-1-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-settings.c