[PATCH v2 0/4] vfs: track per-sb writeback errors and report them via fsinfo()

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

 



v2: drop buffer.c patch to record wb errors when underlying blockdev
flush fails. We may eventually want that, but at this point I don't have
a clear way to test it to determine its efficacy.

At LSF/MM this year, the PostgreSQL developers mentioned that they'd
like to have some mechanism to check whether there have been any
writeback errors on a filesystem, without necessarily flushing any of
the cached data first.

Given that we have a new fsinfo syscall being introduced, we may as well
use it to report writeback errors on a per superblock basis. This allows
us to provide the info that the PostgreSQL developers wanted, without
needing to change an existing interface.

This seems to do the right thing when tested by hand, but I don't yet
have an xfstest for it, since the syscall is still quite new. Once that
goes in and we get fsinfo support in xfs_io, it should be rather
trivial to roll a testcase for this.

Al, if this looks ok, could you pull this into the branch where you
have David's fsinfo patches queued up?

Thanks,
Jeff

Jeff Layton (4):
  vfs: track per-sb writeback errors
  errseq: add a new errseq_scrape function
  vfs: allow fsinfo to fetch the current state of s_wb_err
  samples: extend test-fsinfo to access error_state

 fs/statfs.c                 |  9 +++++++++
 include/linux/errseq.h      |  1 +
 include/linux/fs.h          |  3 +++
 include/linux/pagemap.h     |  5 ++++-
 include/uapi/linux/fsinfo.h | 11 +++++++++++
 lib/errseq.c                | 33 +++++++++++++++++++++++++++++++--
 samples/statx/test-fsinfo.c | 13 +++++++++++++
 7 files changed, 72 insertions(+), 3 deletions(-)

-- 
2.17.1




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux