Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e5eb8caa authored by Al Viro's avatar Al Viro
Browse files

[PATCH] remember mode of reiserfs journal



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent c2dd0dae
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -2575,7 +2575,7 @@ static int release_journal_dev(struct super_block *super,
	if (journal->j_dev_bd != NULL) {
		if (journal->j_dev_bd->bd_dev != super->s_dev)
			bd_release(journal->j_dev_bd);
		result = blkdev_put(journal->j_dev_bd, 0); /* move up */
		result = blkdev_put(journal->j_dev_bd, journal->j_dev_mode);
		journal->j_dev_bd = NULL;
	}

@@ -2608,6 +2608,7 @@ static int journal_init_dev(struct super_block *super,
	/* there is no "jdev" option and journal is on separate device */
	if ((!jdev_name || !jdev_name[0])) {
		journal->j_dev_bd = open_by_devnum(jdev, blkdev_mode);
		journal->j_dev_mode = blkdev_mode;
		if (IS_ERR(journal->j_dev_bd)) {
			result = PTR_ERR(journal->j_dev_bd);
			journal->j_dev_bd = NULL;
@@ -2628,8 +2629,9 @@ static int journal_init_dev(struct super_block *super,
		return 0;
	}

	journal->j_dev_mode = blkdev_mode;
	journal->j_dev_bd = open_bdev_exclusive(jdev_name,
						FMODE_READ|FMODE_WRITE, journal);
						blkdev_mode, journal);
	if (IS_ERR(journal->j_dev_bd)) {
		result = PTR_ERR(journal->j_dev_bd);
		journal->j_dev_bd = NULL;
+1 −0
Original line number Diff line number Diff line
@@ -178,6 +178,7 @@ struct reiserfs_journal {
	struct reiserfs_journal_cnode *j_first;	/*  oldest journal block.  start here for traverse */

	struct block_device *j_dev_bd;
	fmode_t j_dev_mode;
	int j_1st_reserved_block;	/* first block on s_dev of reserved area journal */

	unsigned long j_state;