+++ /dev/null
-From: Joel Becker <joel.becker@oracle.com>
-Subject: ocfs2: Kill the last naked wait_on_buffer() for cached reads.
-Patch-mainline: 2.6.28
-
-ocfs2's cached buffer I/O goes through ocfs2_read_block(s)(). dir.c had
-a naked wait_on_buffer() to wait for some readahead, but it should
-use ocfs2_read_block() instead.
-
-Signed-off-by: Joel Becker <joel.becker@oracle.com>
-Signed-off-by: Mark Fasheh <mfasheh@suse.com>
----
- fs/ocfs2/dir.c | 7 +++----
- 1 files changed, 3 insertions(+), 4 deletions(-)
-
-Index: linux-2.6.27/fs/ocfs2/dir.c
-===================================================================
---- linux-2.6.27.orig/fs/ocfs2/dir.c
-+++ linux-2.6.27/fs/ocfs2/dir.c
-@@ -302,14 +302,13 @@ restart:
- }
- if ((bh = bh_use[ra_ptr++]) == NULL)
- goto next;
-- wait_on_buffer(bh);
-- if (!buffer_uptodate(bh)) {
-- /* read error, skip block & hope for the best */
-+ if (ocfs2_read_block(dir, block, &bh)) {
-+ /* read error, skip block & hope for the best.
-+ * ocfs2_read_block() has released the bh. */
- ocfs2_error(dir->i_sb, "reading directory %llu, "
- "offset %lu\n",
- (unsigned long long)OCFS2_I(dir)->ip_blkno,
- block);
-- brelse(bh);
- goto next;
- }
- i = ocfs2_search_dirblock(bh, dir, name, namelen,