diff options
author | Theodore Ts'o <tytso@mit.edu> | 2012-08-17 09:56:17 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2012-08-17 09:56:17 -0400 |
commit | 316e4cfd0b0b4ce846fd0fbda2deebcffbd3e440 (patch) | |
tree | a8ab826ad9dbbbc886e5112c8d56d591123b37af /fs/jbd2 | |
parent | 67a5da564f97f31c4054d358e00b34d7ee570da5 (diff) |
jbd2: check return value of blkdev_issue_flush()
blkdev_issue_flush() can fail; make sure the error gets properly
propagated.
This is a port of the equivalent jbd patch from commit 349ecd6a3c0e.
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/jbd2')
-rw-r--r-- | fs/jbd2/recovery.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/jbd2/recovery.c b/fs/jbd2/recovery.c index 0131e4362534..626846bac32f 100644 --- a/fs/jbd2/recovery.c +++ b/fs/jbd2/recovery.c | |||
@@ -289,8 +289,11 @@ int jbd2_journal_recover(journal_t *journal) | |||
289 | if (!err) | 289 | if (!err) |
290 | err = err2; | 290 | err = err2; |
291 | /* Make sure all replayed data is on permanent storage */ | 291 | /* Make sure all replayed data is on permanent storage */ |
292 | if (journal->j_flags & JBD2_BARRIER) | 292 | if (journal->j_flags & JBD2_BARRIER) { |
293 | blkdev_issue_flush(journal->j_fs_dev, GFP_KERNEL, NULL); | 293 | err2 = blkdev_issue_flush(journal->j_fs_dev, GFP_KERNEL, NULL); |
294 | if (!err) | ||
295 | err = err2; | ||
296 | } | ||
294 | return err; | 297 | return err; |
295 | } | 298 | } |
296 | 299 | ||