|
@@ -358,6 +358,10 @@ int jbd2_journal_write_metadata_buffer(transaction_t *transaction,
|
|
|
|
|
|
|
|
jbd_unlock_bh_state(bh_in);
|
|
jbd_unlock_bh_state(bh_in);
|
|
|
tmp = jbd2_alloc(bh_in->b_size, GFP_NOFS);
|
|
tmp = jbd2_alloc(bh_in->b_size, GFP_NOFS);
|
|
|
|
|
+ if (!tmp) {
|
|
|
|
|
+ jbd2_journal_put_journal_head(new_jh);
|
|
|
|
|
+ return -ENOMEM;
|
|
|
|
|
+ }
|
|
|
jbd_lock_bh_state(bh_in);
|
|
jbd_lock_bh_state(bh_in);
|
|
|
if (jh_in->b_frozen_data) {
|
|
if (jh_in->b_frozen_data) {
|
|
|
jbd2_free(tmp, bh_in->b_size);
|
|
jbd2_free(tmp, bh_in->b_size);
|