diff options
Diffstat (limited to 'fs/jbd/commit.c')
| -rw-r--r-- | fs/jbd/commit.c | 10 | 
1 files changed, 5 insertions, 5 deletions
| diff --git a/fs/jbd/commit.c b/fs/jbd/commit.c index 4bd882548c45..2c90e3ef625f 100644 --- a/fs/jbd/commit.c +++ b/fs/jbd/commit.c | |||
| @@ -862,12 +862,12 @@ restart_loop: | |||
| 862 | /* A buffer which has been freed while still being | 862 | /* A buffer which has been freed while still being | 
| 863 | * journaled by a previous transaction may end up still | 863 | * journaled by a previous transaction may end up still | 
| 864 | * being dirty here, but we want to avoid writing back | 864 | * being dirty here, but we want to avoid writing back | 
| 865 | * that buffer in the future now that the last use has | 865 | * that buffer in the future after the "add to orphan" | 
| 866 | * been committed. That's not only a performance gain, | 866 | * operation been committed, That's not only a performance | 
| 867 | * it also stops aliasing problems if the buffer is left | 867 | * gain, it also stops aliasing problems if the buffer is | 
| 868 | * behind for writeback and gets reallocated for another | 868 | * left behind for writeback and gets reallocated for another | 
| 869 | * use in a different page. */ | 869 | * use in a different page. */ | 
| 870 | if (buffer_freed(bh)) { | 870 | if (buffer_freed(bh) && !jh->b_next_transaction) { | 
| 871 | clear_buffer_freed(bh); | 871 | clear_buffer_freed(bh); | 
| 872 | clear_buffer_jbddirty(bh); | 872 | clear_buffer_jbddirty(bh); | 
| 873 | } | 873 | } | 
