mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v3 0/5] fs, block: handle end of life
@ 2016-01-08  0:42 Dan Williams
  2016-01-08  0:43 ` [PATCH v3 1/5] block: prepare for del_gendisk_queue() Dan Williams
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Dan Williams @ 2016-01-08  0:42 UTC (permalink / raw)
  To: xfs
  Cc: linux-block, linux-nvdimm, Dave Chinner, Dave Chinner,
	linux-kernel, Jens Axboe, Alexander Viro, Jan Kara,
	linux-fsdevel, Matthew Wilcox, Ross Zwisler

Changes since v2 [1]:

1/ Split "block: introduce del_gendisk_queue()" into a patch that
   introduces del_gendisk_queue() with no functional difference to the
   open coded version and "block: introduce force_failure_partition()
   and unmap_dax_inodes()" which adds the new behavior.

2/ Collect Dave's ack on "xfs: unmap dax at shutdown (force_failure)"

---

As mentioned in [PATCH v3 3/5] "block: introduce
force_failure_partition() and unmap_dax_inodes()" historically we have
waited for filesystem specific heuristics to attempt to guess when a
block device is gone.  Sometimes this works, but in other cases the
system can hang waiting for the fs to trigger its shutdown protocol.

Now with DAX we need new actions, like unmapping all inodes, to be taken
upon a device loss event or fs corruption event.

For now, the approach taken in the following patches only affects xfs
and block drivers that are converted to use del_gendisk_queue().  We can
add more filesystems and driver support over time.

---

Dan Williams (5):
      block: prepare for del_gendisk_queue()
      block: introduce del_gendisk_queue()
      block: introduce force_failure_partition() and unmap_dax_inodes()
      xfs: unmap dax at shutdown (force_failure)
      block, xfs: implement 'force_failure' notifications


 block/genhd.c                |   87 +++++++++++++++++++++++++++++++++++-------
 drivers/block/brd.c          |    9 +---
 drivers/nvdimm/pmem.c        |    3 -
 drivers/s390/block/dcssblk.c |    6 +--
 fs/block_dev.c               |   22 +++++++++++
 fs/inode.c                   |   28 ++++++++++++++
 fs/xfs/xfs_fsops.c           |    9 ++++
 fs/xfs/xfs_super.c           |    8 ++++
 include/linux/fs.h           |    3 +
 include/linux/genhd.h        |    1 
 10 files changed, 150 insertions(+), 26 deletions(-)

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

end of thread, other threads:[~2016-01-08  0:43 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-08  0:42 [PATCH v3 0/5] fs, block: handle end of life Dan Williams
2016-01-08  0:43 ` [PATCH v3 1/5] block: prepare for del_gendisk_queue() Dan Williams
2016-01-08  0:43 ` [PATCH v3 2/5] block: introduce del_gendisk_queue() Dan Williams
2016-01-08  0:43 ` [PATCH v3 3/5] block: introduce force_failure_partition() and unmap_dax_inodes() Dan Williams
2016-01-08  0:43 ` [PATCH v3 4/5] xfs: unmap dax at shutdown (force_failure) Dan Williams
2016-01-08  0:43 ` [PATCH v3 5/5] block, xfs: implement 'force_failure' notifications Dan Williams

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®