async_chunk       378 fs/btrfs/inode.c 	struct async_chunk chunks[];
async_chunk       381 fs/btrfs/inode.c static noinline int add_async_extent(struct async_chunk *cow,
async_chunk       469 fs/btrfs/inode.c static noinline int compress_file_range(struct async_chunk *async_chunk)
async_chunk       471 fs/btrfs/inode.c 	struct inode *inode = async_chunk->inode;
async_chunk       474 fs/btrfs/inode.c 	u64 start = async_chunk->start;
async_chunk       475 fs/btrfs/inode.c 	u64 end = async_chunk->end;
async_chunk       675 fs/btrfs/inode.c 			add_async_extent(async_chunk, start, total_in,
async_chunk       715 fs/btrfs/inode.c 	if (async_chunk->locked_page &&
async_chunk       716 fs/btrfs/inode.c 	    (page_offset(async_chunk->locked_page) >= start &&
async_chunk       717 fs/btrfs/inode.c 	     page_offset(async_chunk->locked_page)) <= end) {
async_chunk       718 fs/btrfs/inode.c 		__set_page_dirty_nobuffers(async_chunk->locked_page);
async_chunk       724 fs/btrfs/inode.c 	add_async_extent(async_chunk, start, end - start + 1, 0, NULL, 0,
async_chunk       753 fs/btrfs/inode.c static noinline void submit_compressed_extents(struct async_chunk *async_chunk)
async_chunk       755 fs/btrfs/inode.c 	struct inode *inode = async_chunk->inode;
async_chunk       766 fs/btrfs/inode.c 	while (!list_empty(&async_chunk->extents)) {
async_chunk       767 fs/btrfs/inode.c 		async_extent = list_entry(async_chunk->extents.next,
async_chunk       780 fs/btrfs/inode.c 			ret = cow_file_range(inode, async_chunk->locked_page,
async_chunk       800 fs/btrfs/inode.c 			else if (ret && async_chunk->locked_page)
async_chunk       801 fs/btrfs/inode.c 				unlock_page(async_chunk->locked_page);
async_chunk       883 fs/btrfs/inode.c 				    async_chunk->write_flags)) {
async_chunk      1154 fs/btrfs/inode.c 	struct async_chunk *async_chunk;
async_chunk      1157 fs/btrfs/inode.c 	async_chunk = container_of(work, struct async_chunk, work);
async_chunk      1159 fs/btrfs/inode.c 	compressed_extents = compress_file_range(async_chunk);
async_chunk      1161 fs/btrfs/inode.c 		btrfs_add_delayed_iput(async_chunk->inode);
async_chunk      1162 fs/btrfs/inode.c 		async_chunk->inode = NULL;
async_chunk      1171 fs/btrfs/inode.c 	struct async_chunk *async_chunk = container_of(work, struct async_chunk,
async_chunk      1176 fs/btrfs/inode.c 	nr_pages = (async_chunk->end - async_chunk->start + PAGE_SIZE) >>
async_chunk      1190 fs/btrfs/inode.c 	if (async_chunk->inode)
async_chunk      1191 fs/btrfs/inode.c 		submit_compressed_extents(async_chunk);
async_chunk      1196 fs/btrfs/inode.c 	struct async_chunk *async_chunk;
async_chunk      1198 fs/btrfs/inode.c 	async_chunk = container_of(work, struct async_chunk, work);
async_chunk      1199 fs/btrfs/inode.c 	if (async_chunk->inode)
async_chunk      1200 fs/btrfs/inode.c 		btrfs_add_delayed_iput(async_chunk->inode);
async_chunk      1205 fs/btrfs/inode.c 	if (atomic_dec_and_test(async_chunk->pending))
async_chunk      1206 fs/btrfs/inode.c 		kvfree(async_chunk->pending);
async_chunk      1216 fs/btrfs/inode.c 	struct async_chunk *async_chunk;
async_chunk      1251 fs/btrfs/inode.c 	async_chunk = ctx->chunks;
async_chunk      1265 fs/btrfs/inode.c 		async_chunk[i].pending = &ctx->num_chunks;
async_chunk      1266 fs/btrfs/inode.c 		async_chunk[i].inode = inode;
async_chunk      1267 fs/btrfs/inode.c 		async_chunk[i].start = start;
async_chunk      1268 fs/btrfs/inode.c 		async_chunk[i].end = cur_end;
async_chunk      1269 fs/btrfs/inode.c 		async_chunk[i].write_flags = write_flags;
async_chunk      1270 fs/btrfs/inode.c 		INIT_LIST_HEAD(&async_chunk[i].extents);
async_chunk      1282 fs/btrfs/inode.c 			async_chunk[i].locked_page = locked_page;
async_chunk      1285 fs/btrfs/inode.c 			async_chunk[i].locked_page = NULL;
async_chunk      1288 fs/btrfs/inode.c 		btrfs_init_work(&async_chunk[i].work, async_cow_start,
async_chunk      1294 fs/btrfs/inode.c 		btrfs_queue_work(fs_info->delalloc_workers, &async_chunk[i].work);