summaryrefslogtreecommitdiffstats
path: root/drivers/block/null_blk.h
diff options
context:
space:
mode:
authorAjay Joshi <ajay.joshi@wdc.com>2019-10-17 14:19:43 -0700
committerJens Axboe <axboe@kernel.dk>2019-10-17 19:01:22 -0600
commitdd85b4922de1b70f0729d2a7856db619e210a8ec (patch)
tree10baad9693e32ac04eafed70feef99317b6a8e1b /drivers/block/null_blk.h
parent45919fbfe1c487c17ea1d198534339a5e8abeae3 (diff)
downloadlinux-dd85b4922de1b70f0729d2a7856db619e210a8ec.tar.bz2
null_blk: return fixed zoned reads > write pointer
A zoned block device maintains a write pointer within a zone, and reads beyond the write pointer are undefined. Fill data buffer returned above the write pointer with 0xFF. Signed-off-by: Ajay Joshi <ajay.joshi@wdc.com> Reviewed-by: Damien Le Moal <damien.lemoal@wdc.com> Reviewed-by: Matias Bjørling <matias.bjorling@wdc.com> Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/block/null_blk.h')
-rw-r--r--drivers/block/null_blk.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/block/null_blk.h b/drivers/block/null_blk.h
index a235c45e22a7..93c2a3d403da 100644
--- a/drivers/block/null_blk.h
+++ b/drivers/block/null_blk.h
@@ -96,6 +96,8 @@ int null_zone_report(struct gendisk *disk, sector_t sector,
blk_status_t null_handle_zoned(struct nullb_cmd *cmd,
enum req_opf op, sector_t sector,
sector_t nr_sectors);
+size_t null_zone_valid_read_len(struct nullb *nullb,
+ sector_t sector, unsigned int len);
#else
static inline int null_zone_init(struct nullb_device *dev)
{
@@ -115,5 +117,11 @@ static inline blk_status_t null_handle_zoned(struct nullb_cmd *cmd,
{
return BLK_STS_NOTSUPP;
}
+static inline size_t null_zone_valid_read_len(struct nullb *nullb,
+ sector_t sector,
+ unsigned int len)
+{
+ return len;
+}
#endif /* CONFIG_BLK_DEV_ZONED */
#endif /* __NULL_BLK_H */