diff options
author | Ingo Molnar <mingo@kernel.org> | 2014-11-16 05:31:17 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2014-11-16 05:31:17 -0500 |
commit | f108c898ddae4bb1146ed9e46ce4470725d945c4 (patch) | |
tree | bb887907e0448d4d903f853c33b3c55a863412e2 /fs/jbd2/journal.c | |
parent | 904cb3677f3adcd3d837be0a0d0b14251ba8d6f7 (diff) | |
parent | 68055915c1c22489f9658bd2b7391bb11b2cf4e4 (diff) |
Merge branch 'perf/urgent' into perf/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'fs/jbd2/journal.c')
-rw-r--r-- | fs/jbd2/journal.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c index 19d74d86d99c..e4dc74713a43 100644 --- a/fs/jbd2/journal.c +++ b/fs/jbd2/journal.c | |||
@@ -1237,7 +1237,7 @@ journal_t * jbd2_journal_init_inode (struct inode *inode) | |||
1237 | goto out_err; | 1237 | goto out_err; |
1238 | } | 1238 | } |
1239 | 1239 | ||
1240 | bh = __getblk(journal->j_dev, blocknr, journal->j_blocksize); | 1240 | bh = getblk_unmovable(journal->j_dev, blocknr, journal->j_blocksize); |
1241 | if (!bh) { | 1241 | if (!bh) { |
1242 | printk(KERN_ERR | 1242 | printk(KERN_ERR |
1243 | "%s: Cannot get buffer for journal superblock\n", | 1243 | "%s: Cannot get buffer for journal superblock\n", |
@@ -1522,14 +1522,6 @@ static int journal_get_superblock(journal_t *journal) | |||
1522 | goto out; | 1522 | goto out; |
1523 | } | 1523 | } |
1524 | 1524 | ||
1525 | if (jbd2_journal_has_csum_v2or3(journal) && | ||
1526 | JBD2_HAS_COMPAT_FEATURE(journal, JBD2_FEATURE_COMPAT_CHECKSUM)) { | ||
1527 | /* Can't have checksum v1 and v2 on at the same time! */ | ||
1528 | printk(KERN_ERR "JBD2: Can't enable checksumming v1 and v2 " | ||
1529 | "at the same time!\n"); | ||
1530 | goto out; | ||
1531 | } | ||
1532 | |||
1533 | if (JBD2_HAS_INCOMPAT_FEATURE(journal, JBD2_FEATURE_INCOMPAT_CSUM_V2) && | 1525 | if (JBD2_HAS_INCOMPAT_FEATURE(journal, JBD2_FEATURE_INCOMPAT_CSUM_V2) && |
1534 | JBD2_HAS_INCOMPAT_FEATURE(journal, JBD2_FEATURE_INCOMPAT_CSUM_V3)) { | 1526 | JBD2_HAS_INCOMPAT_FEATURE(journal, JBD2_FEATURE_INCOMPAT_CSUM_V3)) { |
1535 | /* Can't have checksum v2 and v3 at the same time! */ | 1527 | /* Can't have checksum v2 and v3 at the same time! */ |
@@ -1538,6 +1530,14 @@ static int journal_get_superblock(journal_t *journal) | |||
1538 | goto out; | 1530 | goto out; |
1539 | } | 1531 | } |
1540 | 1532 | ||
1533 | if (jbd2_journal_has_csum_v2or3(journal) && | ||
1534 | JBD2_HAS_COMPAT_FEATURE(journal, JBD2_FEATURE_COMPAT_CHECKSUM)) { | ||
1535 | /* Can't have checksum v1 and v2 on at the same time! */ | ||
1536 | printk(KERN_ERR "JBD2: Can't enable checksumming v1 and v2/3 " | ||
1537 | "at the same time!\n"); | ||
1538 | goto out; | ||
1539 | } | ||
1540 | |||
1541 | if (!jbd2_verify_csum_type(journal, sb)) { | 1541 | if (!jbd2_verify_csum_type(journal, sb)) { |
1542 | printk(KERN_ERR "JBD2: Unknown checksum type\n"); | 1542 | printk(KERN_ERR "JBD2: Unknown checksum type\n"); |
1543 | goto out; | 1543 | goto out; |