Commit 0587aa3d11f9769a301b21bff2c3ed8365606b8d
Committed by
Theodore Ts'o
1 parent
f4c8cc652d
Exists in
master
and in
4 other branches
jbd2: fix /proc/fs/jbd2/<dev> when using an external journal
In jbd2_journal_init_dev(), we need make sure the journal structure is fully initialzied before calling jbd2_stats_proc_init(). Reviewed-by: Andreas Dilger <andreas.dilger@oracle.com> Signed-off-by: yangsheng <sheng.yang@oracle.com> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Showing 1 changed file with 8 additions and 8 deletions Side-by-side Diff
fs/jbd2/journal.c
... | ... | @@ -899,6 +899,14 @@ |
899 | 899 | |
900 | 900 | /* journal descriptor can store up to n blocks -bzzz */ |
901 | 901 | journal->j_blocksize = blocksize; |
902 | + journal->j_dev = bdev; | |
903 | + journal->j_fs_dev = fs_dev; | |
904 | + journal->j_blk_offset = start; | |
905 | + journal->j_maxlen = len; | |
906 | + bdevname(journal->j_dev, journal->j_devname); | |
907 | + p = journal->j_devname; | |
908 | + while ((p = strchr(p, '/'))) | |
909 | + *p = '!'; | |
902 | 910 | jbd2_stats_proc_init(journal); |
903 | 911 | n = journal->j_blocksize / sizeof(journal_block_tag_t); |
904 | 912 | journal->j_wbufsize = n; |
... | ... | @@ -908,14 +916,6 @@ |
908 | 916 | __func__); |
909 | 917 | goto out_err; |
910 | 918 | } |
911 | - journal->j_dev = bdev; | |
912 | - journal->j_fs_dev = fs_dev; | |
913 | - journal->j_blk_offset = start; | |
914 | - journal->j_maxlen = len; | |
915 | - bdevname(journal->j_dev, journal->j_devname); | |
916 | - p = journal->j_devname; | |
917 | - while ((p = strchr(p, '/'))) | |
918 | - *p = '!'; | |
919 | 919 | |
920 | 920 | bh = __getblk(journal->j_dev, start, journal->j_blocksize); |
921 | 921 | if (!bh) { |