aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_dquot.h
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2012-11-14 01:50:13 -0500
committerBen Myers <bpm@sgi.com>2012-11-15 22:34:33 -0500
commitc6319198702350a2215a8c0cacd6cc4283728a1b (patch)
tree3016229da9ca0c4c6a657c7b587d20ee41a9eaab /fs/xfs/xfs_dquot.h
parent3d3e6f64e22c94115d47de670611bcd3ecda3796 (diff)
xfs: verify dquot blocks as they are read from disk
Add a dquot buffer verify callback function and pass it into the buffer read functions. This checks all the dquots in a buffer, but cannot completely verify the dquot ids are correct. Also, errors cannot be repaired, so an additional function is added to repair bad dquots in the buffer if such an error is detected in a context where repair is allowed. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Phil White <pwhite@sgi.com> Signed-off-by: Ben Myers <bpm@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_dquot.h')
-rw-r--r--fs/xfs/xfs_dquot.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/xfs_dquot.h b/fs/xfs/xfs_dquot.h
index 7d20af27346d..a08ba92d7da0 100644
--- a/fs/xfs/xfs_dquot.h
+++ b/fs/xfs/xfs_dquot.h
@@ -140,6 +140,7 @@ static inline xfs_dquot_t *xfs_inode_dquot(struct xfs_inode *ip, int type)
140 140
141extern int xfs_qm_dqread(struct xfs_mount *, xfs_dqid_t, uint, 141extern int xfs_qm_dqread(struct xfs_mount *, xfs_dqid_t, uint,
142 uint, struct xfs_dquot **); 142 uint, struct xfs_dquot **);
143extern void xfs_dquot_read_verify(struct xfs_buf *bp);
143extern void xfs_qm_dqdestroy(xfs_dquot_t *); 144extern void xfs_qm_dqdestroy(xfs_dquot_t *);
144extern int xfs_qm_dqflush(struct xfs_dquot *, struct xfs_buf **); 145extern int xfs_qm_dqflush(struct xfs_dquot *, struct xfs_buf **);
145extern void xfs_qm_dqunpin_wait(xfs_dquot_t *); 146extern void xfs_qm_dqunpin_wait(xfs_dquot_t *);