All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] dax: handling of media errors
@ 2016-03-24 23:17 ` Vishal Verma
  0 siblings, 0 replies; 74+ messages in thread
From: Vishal Verma @ 2016-03-24 23:17 UTC (permalink / raw)
  To: linux-nvdimm
  Cc: Jens Axboe, Jan Kara, Andrew Morton, Dave Chinner, xfs,
	linux-block, linux-mm, Matthew Wilcox, linux-fsdevel, linux-ext4,
	Al Viro

Until now, dax has been disabled if media errors were found on
any device. This series attempts to address that.

The first three patches from Dan re-enable dax even when media
errors are present.

The fourth patch from Matthew removes the
zeroout path from dax entirely, making zeroout operations always
go through the driver (The motivation is that if a backing device
has media errors, and we create a sparse file on it, we don't
want the initial zeroing to happen via dax, we want to give the
block driver a chance to clear the errors).

The fifth patch changes the behaviour of dax_do_io by adding a
wrapper around it that is passed all the arguments also needed by
__blockdev_do_direct_IO. If (the new) __dax_do_io fails with -EIO
due to a bad block, we simply retry with the direct_IO path which
forces the IO to go through the block driver, and can attempt to
clear the error.

Dan Williams (3):
  block, dax: pass blk_dax_ctl through to drivers
  dax: fallback from pmd to pte on error
  dax: enable dax in the presence of known media errors (badblocks)

Vishal Verma (2):
  dax: use sb_issue_zerout instead of calling dax_clear_sectors
  dax: handle media errors in dax_do_io

 arch/powerpc/sysdev/axonram.c | 10 +++----
 block/ioctl.c                 |  9 ------
 drivers/block/brd.c           |  9 +++---
 drivers/nvdimm/pmem.c         | 17 ++++++++---
 drivers/s390/block/dcssblk.c  | 12 ++++----
 fs/block_dev.c                |  7 +++--
 fs/dax.c                      | 70 +++++++++++++++++++++----------------------
 fs/ext2/inode.c               | 12 ++++----
 fs/ext4/indirect.c            | 11 ++++---
 fs/ext4/inode.c               |  5 ++--
 fs/xfs/xfs_aops.c             |  7 +++--
 fs/xfs/xfs_bmap_util.c        |  9 ------
 include/linux/blkdev.h        |  3 +-
 include/linux/dax.h           |  7 +++--
 14 files changed, 93 insertions(+), 95 deletions(-)

-- 
2.5.5

_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

^ permalink raw reply	[flat|nested] 74+ messages in thread

end of thread, other threads:[~2016-04-04 12:09 UTC | newest]

Thread overview: 74+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-24 23:17 [PATCH 0/5] dax: handling of media errors Vishal Verma
2016-03-24 23:17 ` Vishal Verma
2016-03-24 23:17 ` Vishal Verma
2016-03-24 23:17 ` Vishal Verma
2016-03-24 23:17 ` [PATCH 1/5] block, dax: pass blk_dax_ctl through to drivers Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-24 23:17 ` [PATCH 2/5] dax: fallback from pmd to pte on error Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-24 23:17 ` [PATCH 3/5] dax: enable dax in the presence of known media errors (badblocks) Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-24 23:23   ` Verma, Vishal L
2016-03-24 23:23     ` Verma, Vishal L
2016-03-24 23:23     ` Verma, Vishal L
2016-03-24 23:17 ` [PATCH 4/5] dax: use sb_issue_zerout instead of calling dax_clear_sectors Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-25 10:44   ` Christoph Hellwig
2016-03-25 10:44     ` Christoph Hellwig
2016-03-25 21:01     ` Verma, Vishal L
2016-03-25 21:01       ` Verma, Vishal L
2016-03-25 18:47   ` Dan Williams
2016-03-25 18:47     ` Dan Williams
2016-03-25 18:47     ` Dan Williams
2016-03-25 21:03     ` Verma, Vishal L
2016-03-25 21:03       ` Verma, Vishal L
2016-03-25 21:03       ` Verma, Vishal L
2016-03-25 21:20       ` Dan Williams
2016-03-25 21:20         ` Dan Williams
2016-03-25 21:20         ` Dan Williams
2016-03-28 20:01         ` Verma, Vishal L
2016-03-28 20:01           ` Verma, Vishal L
2016-03-28 20:01           ` Verma, Vishal L
2016-03-28 23:34           ` Dan Williams
2016-03-28 23:34             ` Dan Williams
2016-03-28 23:34             ` Dan Williams
2016-03-28 23:34             ` Dan Williams
2016-03-29 18:57             ` Verma, Vishal L
2016-03-29 18:57               ` Verma, Vishal L
2016-03-29 18:57               ` Verma, Vishal L
2016-03-29 18:57               ` Verma, Vishal L
2016-03-29 19:37               ` Dan Williams
2016-03-29 19:37                 ` Dan Williams
2016-03-29 19:37                 ` Dan Williams
2016-03-29 19:37                 ` Dan Williams
2016-03-30  7:49               ` Jan Kara
2016-03-30  7:49                 ` Jan Kara
2016-03-30  7:49                 ` Jan Kara
2016-03-30  7:49                 ` Jan Kara
2016-03-30  7:49                 ` Jan Kara
2016-04-01 19:17                 ` Verma, Vishal L
2016-04-01 19:17                   ` Verma, Vishal L
2016-04-01 19:17                   ` Verma, Vishal L
2016-04-04 12:09                   ` Jan Kara
2016-04-04 12:09                     ` Jan Kara
2016-04-04 12:09                     ` Jan Kara
2016-04-04 12:09                     ` Jan Kara
2016-04-04 12:09                     ` Jan Kara
2016-03-24 23:17 ` [PATCH 5/5] dax: handle media errors in dax_do_io Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-24 23:17   ` Vishal Verma
2016-03-25 10:45   ` Christoph Hellwig
2016-03-25 10:45     ` Christoph Hellwig
2016-03-25 10:45     ` Christoph Hellwig
2016-03-25 20:59     ` Verma, Vishal L
2016-03-25 20:59       ` Verma, Vishal L
2016-03-25 21:42       ` Dan Williams
2016-03-25 21:42         ` Dan Williams
2016-03-25 22:36         ` Verma, Vishal L
2016-03-25 22:36           ` Verma, Vishal L
2016-03-25 22:36           ` Verma, Vishal L
2016-03-26 16:53         ` hch
2016-03-26 16:53           ` hch

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.