Home | History | Annotate | Download | only in ext2fs

Lines Matching full:channel

63 	/* The backing io channel */
73 static errcode_t undo_open(const char *name, int flags, io_channel *channel);
74 static errcode_t undo_close(io_channel channel);
75 static errcode_t undo_set_blksize(io_channel channel, int blksize);
76 static errcode_t undo_read_blk64(io_channel channel, unsigned long long block,
78 static errcode_t undo_write_blk64(io_channel channel, unsigned long long block,
80 static errcode_t undo_read_blk(io_channel channel, unsigned long block,
82 static errcode_t undo_write_blk(io_channel channel, unsigned long block,
84 static errcode_t undo_flush(io_channel channel);
85 static errcode_t undo_write_byte(io_channel channel, unsigned long offset,
87 static errcode_t undo_set_option(io_channel channel, const char *option,
89 static errcode_t undo_get_stats(io_channel channel, io_stats *stats);
143 io_channel channel;
147 channel = data->real;
148 block_size = channel->block_size;
150 io_channel_set_blksize(channel, SUPERBLOCK_OFFSET);
151 retval = io_channel_read_blk64(channel, 1, -SUPERBLOCK_SIZE, &super);
178 io_channel_set_blksize(channel, block_size);
200 static errcode_t undo_write_tdb(io_channel channel,
213 data = (struct undo_private_data *) channel->private_data;
223 size = channel->block_size;
228 size = count * channel->block_size;
236 offset = (block * channel->block_size) + data->offset ;
261 backing_blk_num = (offset - data->offset) / channel->block_size;
264 ((offset - data->offset) % channel->block_size);
273 if ((count % channel->block_size) == 0)
274 sz = count / channel->block_size;
294 ((offset - data->offset) % channel->block_size);
333 static errcode_t undo_io_read_error(io_channel channel ATTR((unused)),
345 static void undo_err_handler_init(io_channel channel)
347 channel->read_error = undo_io_read_error;
350 static errcode_t undo_open(const char *name, int flags, io_channel *channel)
406 *channel = io;
419 static errcode_t undo_close(io_channel channel)
424 EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
425 data = (struct undo_private_data *) channel->private_data;
428 if (--channel->refcount > 0)
431 retval = write_file_system_identity(channel, data->tdb);
438 ext2fs_free_mem(&channel->private_data);
439 if (channel->name)
440 ext2fs_free_mem(&channel->name);
441 ext2fs_free_mem(&channel);
446 static errcode_t undo_set_blksize(io_channel channel, int blksize)
451 EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
452 data = (struct undo_private_data *) channel->private_data;
463 channel->block_size = blksize;
467 static errcode_t undo_read_blk64(io_channel channel, unsigned long long block,
473 EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
474 data = (struct undo_private_data *) channel->private_data;
483 static errcode_t undo_read_blk(io_channel channel, unsigned long block,
486 return undo_read_blk64(channel, block, count, buf);
489 static errcode_t undo_write_blk64(io_channel channel, unsigned long long block,
495 EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
496 data = (struct undo_private_data *) channel->private_data;
501 retval = undo_write_tdb(channel, block, count);
510 static errcode_t undo_write_blk(io_channel channel, unsigned long block,
513 return undo_write_blk64(channel, block, count, buf);
516 static errcode_t undo_write_byte(io_channel channel, unsigned long offset,
524 EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
525 data = (struct undo_private_data *) channel->private_data;
529 blk_num = location/channel->block_size;
536 count = (size + (location % channel->block_size) +
537 channel->block_size -1)/channel->block_size;
538 retval = undo_write_tdb(channel, blk_num, count);
550 static errcode_t undo_flush(io_channel channel)
555 EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
556 data = (struct undo_private_data *) channel->private_data;
565 static errcode_t undo_set_option(io_channel channel, const char *option,
573 EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
574 data = (struct undo_private_data *) channel->private_data;
609 static errcode_t undo_get_stats(io_channel channel, io_stats *stats)
614 EXT2_CHECK_MAGIC(channel, EXT2_ET_MAGIC_IO_CHANNEL);
615 data = (struct undo_private_data *) channel->private_data;