Lines Matching defs:bh

70 	struct buffer_head *bh;
72 bh = e2fsck_allocate_memory(kdev->k_ctx, sizeof(*bh), "block buffer");
73 if (!bh)
79 bh->b_ctx = kdev->k_ctx;
81 bh->b_io = kdev->k_ctx->fs->io;
83 bh->b_io = kdev->k_ctx->journal_io;
84 bh->b_size = blocksize;
85 bh->b_blocknr = blocknr;
87 return bh;
105 struct buffer_head *bh;
108 bh = *bhp++;
109 if (rw == READ && !bh->b_uptodate) {
111 (unsigned long) bh->b_blocknr, (void *) bh);
112 retval = io_channel_read_blk(bh->b_io,
113 bh->b_blocknr,
114 1, bh->b_data);
116 com_err(bh->b_ctx->device_name, retval,
118 (unsigned long) bh->b_blocknr);
119 bh->b_err = retval;
122 bh->b_uptodate = 1;
123 } else if (rw == WRITE && bh->b_dirty) {
125 (unsigned long) bh->b_blocknr, (void *) bh);
126 retval = io_channel_write_blk(bh->b_io,
127 bh->b_blocknr,
128 1, bh->b_data);
130 com_err(bh->b_ctx->device_name, retval,
132 (unsigned long) bh->b_blocknr);
133 bh->b_err = retval;
136 bh->b_dirty = 0;
137 bh->b_uptodate = 1;
141 (unsigned long) bh->b_blocknr);
146 void mark_buffer_dirty(struct buffer_head *bh)
148 bh->b_dirty = 1;
151 static void mark_buffer_clean(struct buffer_head * bh)
153 bh->b_dirty = 0;
156 void brelse(struct buffer_head *bh)
158 if (bh->b_dirty)
159 ll_rw_block(WRITE, 1, &bh);
161 (unsigned long) bh->b_blocknr, (void *) bh, --bh_count);
162 ext2fs_free_mem(&bh);
165 int buffer_uptodate(struct buffer_head *bh)
167 return bh->b_uptodate;
170 void mark_buffer_uptodate(struct buffer_head *bh, int val)
172 bh->b_uptodate = val;
175 void wait_on_buffer(struct buffer_head *bh)
177 if (!bh->b_uptodate)
178 ll_rw_block(READ, 1, &bh);
226 struct buffer_head *bh;
375 bh = getblk(dev_journal, start, ctx->fs->blocksize);
376 if (!bh) {
380 ll_rw_block(READ, 1, &bh);
381 if ((retval = bh->b_err) != 0) {
382 brelse(bh);
385 memcpy(&jsuper, start ? bh->b_data : bh->b_data + 1024,
387 brelse(bh);
410 if (!(bh = getblk(dev_journal, start, journal->j_blocksize))) {
415 journal->j_sb_buffer = bh;
416 journal->j_superblock = (journal_superblock_t *)bh->b_data;