aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_rw.c
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2012-04-23 01:58:55 -0400
committerBen Myers <bpm@sgi.com>2012-05-14 17:20:51 -0400
commit7ca790a507a9288ebedab90a8e40b9afa8e4e949 (patch)
tree70ad7655655e3f5e021b3c80f5c102f4399bbd68 /fs/xfs/xfs_rw.c
parenta8acad70731e7d0585f25f33f8a009176f001f70 (diff)
xfs: kill xfs_read_buf()
xfs_read_buf() is effectively the same as xfs_trans_read_buf() when called outside a transaction context. The error handling is slightly different in that xfs_read_buf stales the errored buffer it gets back, but there is probably good reason for xfs_trans_read_buf() for doing this. Hence update xfs_trans_read_buf() to the same error handling as xfs_read_buf(), and convert all the callers of xfs_read_buf() to use the former function. We can then remove xfs_read_buf(). Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Mark Tinguely <tinguely@sgi.com> Signed-off-by: Ben Myers <bpm@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_rw.c')
-rw-r--r--fs/xfs/xfs_rw.c50
1 files changed, 0 insertions, 50 deletions
diff --git a/fs/xfs/xfs_rw.c b/fs/xfs/xfs_rw.c
index 2ce97758f4c7..3c2488a11165 100644
--- a/fs/xfs/xfs_rw.c
+++ b/fs/xfs/xfs_rw.c
@@ -92,56 +92,6 @@ xfs_do_force_shutdown(
92} 92}
93 93
94/* 94/*
95 * This isn't an absolute requirement, but it is
96 * just a good idea to call xfs_read_buf instead of
97 * directly doing a read_buf call. For one, we shouldn't
98 * be doing this disk read if we are in SHUTDOWN state anyway,
99 * so this stops that from happening. Secondly, this does all
100 * the error checking stuff and the brelse if appropriate for
101 * the caller, so the code can be a little leaner.
102 */
103
104int
105xfs_read_buf(
106 struct xfs_mount *mp,
107 xfs_buftarg_t *target,
108 xfs_daddr_t blkno,
109 int len,
110 uint flags,
111 xfs_buf_t **bpp)
112{
113 xfs_buf_t *bp;
114 int error;
115
116 if (!flags)
117 flags = XBF_MAPPED;
118
119 bp = xfs_buf_read(target, blkno, len, flags);
120 if (!bp)
121 return XFS_ERROR(EIO);
122 error = bp->b_error;
123 if (!error && !XFS_FORCED_SHUTDOWN(mp)) {
124 *bpp = bp;
125 } else {
126 *bpp = NULL;
127 if (error) {
128 xfs_buf_ioerror_alert(bp, __func__);
129 } else {
130 error = XFS_ERROR(EIO);
131 }
132 if (bp) {
133 XFS_BUF_UNDONE(bp);
134 xfs_buf_stale(bp);
135 /*
136 * brelse clears B_ERROR and b_error
137 */
138 xfs_buf_relse(bp);
139 }
140 }
141 return (error);
142}
143
144/*
145 * helper function to extract extent size hint from inode 95 * helper function to extract extent size hint from inode
146 */ 96 */
147xfs_extlen_t 97xfs_extlen_t