[PATCH for-next v2 0/4] null_blk: improve write failure simulation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Currently, null_blk has 'badblocks' attribute to simulate IO failures
for broken blocks. This helps checking if userland tools can handle IO
failures. However, this badblocks feature has two differences from the
IO failures on real storage devices. Firstly, when write operations fail
for the badblocks, null_blk does not write any data, while real storage
devices sometimes do partial data write. Secondly, null_blk always make
write operations fail for the specified badblocks, while real storage
devices can recover the bad blocks so that next write operations can
succeed after failure. Hence, real storage devices are required to check
if userland tools support such partial writes or bad blocks recovery.

This series improves write failure simulation by null_blk to allow
checking userland tools without real storage devices. The first patch
is a preparation to make new feature addition simpler. The second and
the third patches add partial IO support. The last patch introduces
'badblocks_once' attribute to simulate bad blocks recovery.

Changes from v1:
* Added the first patch which avoids the long, multi-line features string

Shin'ichiro Kawasaki (4):
  null_blk: generate null_blk configfs features string
  null_blk: do partial IO for bad blocks
  null_blk: move write pointers for partial writes
  null_blk: introduce badblocks_once parameter

 drivers/block/null_blk/main.c     | 135 ++++++++++++++++++++----------
 drivers/block/null_blk/null_blk.h |   7 ++
 drivers/block/null_blk/zoned.c    |  10 +++
 3 files changed, 110 insertions(+), 42 deletions(-)

-- 
2.47.0





[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux