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

Commit d03e1292 authored by Zheng Liu's avatar Zheng Liu Committed by Jan Kara
Browse files

ext3: replace ll_rw_block with other functions



ll_rw_block() is deprecated. Thus we replace it with other functions.

CC: Jan Kara <jack@suse.cz>
Signed-off-by: default avatarZheng Liu <wenqing.lz@taobao.com>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent bcdd0c16
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -1136,9 +1136,11 @@ struct buffer_head *ext3_bread(handle_t *handle, struct inode *inode,
	bh = ext3_getblk(handle, inode, block, create, err);
	if (!bh)
		return bh;
	if (buffer_uptodate(bh))
	if (bh_uptodate_or_lock(bh))
		return bh;
	ll_rw_block(READ | REQ_META | REQ_PRIO, 1, &bh);
	get_bh(bh);
	bh->b_end_io = end_buffer_read_sync;
	submit_bh(READ | REQ_META | REQ_PRIO, bh);
	wait_on_buffer(bh);
	if (buffer_uptodate(bh))
		return bh;
@@ -2068,12 +2070,10 @@ static int ext3_block_truncate_page(struct inode *inode, loff_t from)
	if (PageUptodate(page))
		set_buffer_uptodate(bh);

	if (!buffer_uptodate(bh)) {
		err = -EIO;
		ll_rw_block(READ, 1, &bh);
		wait_on_buffer(bh);
	if (!bh_uptodate_or_lock(bh)) {
		err = bh_submit_read(bh);
		/* Uhhuh. Read error. Complain and punt. */
		if (!buffer_uptodate(bh))
		if (err)
			goto unlock;
	}

+6 −3
Original line number Diff line number Diff line
@@ -921,9 +921,12 @@ restart:
				num++;
				bh = ext3_getblk(NULL, dir, b++, 0, &err);
				bh_use[ra_max] = bh;
				if (bh)
					ll_rw_block(READ | REQ_META | REQ_PRIO,
						    1, &bh);
				if (bh && !bh_uptodate_or_lock(bh)) {
					get_bh(bh);
					bh->b_end_io = end_buffer_read_sync;
					submit_bh(READ | REQ_META | REQ_PRIO,
						  bh);
				}
			}
		}
		if ((bh = bh_use[ra_ptr++]) == NULL)
+5 −5
Original line number Diff line number Diff line
@@ -2231,12 +2231,12 @@ static journal_t *ext3_get_dev_journal(struct super_block *sb,
		goto out_bdev;
	}
	journal->j_private = sb;
	ll_rw_block(READ, 1, &journal->j_sb_buffer);
	wait_on_buffer(journal->j_sb_buffer);
	if (!buffer_uptodate(journal->j_sb_buffer)) {
	if (!bh_uptodate_or_lock(journal->j_sb_buffer)) {
		if (bh_submit_read(journal->j_sb_buffer)) {
			ext3_msg(sb, KERN_ERR, "I/O error on journal device");
			goto out_journal;
		}
	}
	if (be32_to_cpu(journal->j_superblock->s_nr_users) != 1) {
		ext3_msg(sb, KERN_ERR,
			"error: external journal has more than one "