mtd: mtd_blkdevs: Initialize rq.limits.discard_granularity
authorZhihao Cheng <chengzhihao1@huawei.com>
Tue, 15 Jun 2021 09:39:05 +0000 (17:39 +0800)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Thu, 15 Jul 2021 22:49:13 +0000 (00:49 +0200)
commit2b6d2833cd1d8a43a837a45da65860ef086443dc
treea5d68cfa97c6a9cb1eb1d405dedf5ee48ce7fa2d
parente73f0f0ee7541171d89f2e2491130c7771ba58d3
mtd: mtd_blkdevs: Initialize rq.limits.discard_granularity

Since commit b35fd7422c2f8("block: check queue's limits.discard_granularity
in __blkdev_issue_discard()") checks rq.limits.discard_granularity in
__blkdev_issue_discard(), we may get following warnings on formatted ftl:

  WARNING: CPU: 2 PID: 7313 at block/blk-lib.c:51
  __blkdev_issue_discard+0x2a7/0x390

Reproducer:
  1. ftl_format /dev/mtd0
  2. modprobe ftl
  3. mkfs.vfat /dev/ftla
  4. mount -odiscard /dev/ftla temp
  5. dd if=/dev/zero of=temp/tst bs=1M count=10 oflag=direct
  6. dd if=/dev/zero of=temp/tst bs=1M count=10 oflag=direct

Fix it by initializing rq.limits.discard_granularity if device supports
discard operation.

Signed-off-by: Zhihao Cheng <chengzhihao1@huawei.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20210615093905.3473709-1-chengzhihao1@huawei.com
drivers/mtd/mtd_blkdevs.c