/linux-6.6.21/fs/squashfs/ ! |
D | super.c | 183 struct squashfs_sb_info *msblk; in squashfs_fill_super() local 194 sb->s_fs_info = kzalloc(sizeof(*msblk), GFP_KERNEL); in squashfs_fill_super() 199 msblk = sb->s_fs_info; in squashfs_fill_super() 200 msblk->thread_ops = opts->thread_ops; in squashfs_fill_super() 202 msblk->panic_on_errors = (opts->errors == Opt_errors_panic); in squashfs_fill_super() 204 msblk->devblksize = sb_min_blocksize(sb, SQUASHFS_DEVBLK_SIZE); in squashfs_fill_super() 205 msblk->devblksize_log2 = ffz(~msblk->devblksize); in squashfs_fill_super() 207 mutex_init(&msblk->meta_index_mutex); in squashfs_fill_super() 215 msblk->bytes_used = sizeof(*sblk); in squashfs_fill_super() 237 msblk->max_thread_num = msblk->thread_ops->max_decompressors(); in squashfs_fill_super() [all …]
|
D | file.c | 52 struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info; in locate_meta_index() local 55 mutex_lock(&msblk->meta_index_mutex); in locate_meta_index() 59 if (msblk->meta_index == NULL) in locate_meta_index() 63 if (msblk->meta_index[i].inode_number == inode->i_ino && in locate_meta_index() 64 msblk->meta_index[i].offset >= offset && in locate_meta_index() 65 msblk->meta_index[i].offset <= index && in locate_meta_index() 66 msblk->meta_index[i].locked == 0) { in locate_meta_index() 68 msblk->meta_index[i].offset); in locate_meta_index() 69 meta = &msblk->meta_index[i]; in locate_meta_index() 78 mutex_unlock(&msblk->meta_index_mutex); in locate_meta_index() [all …]
|
D | decompressor_multi.c | 61 static void *squashfs_decompressor_create(struct squashfs_sb_info *msblk, in squashfs_decompressor_create() argument 87 decomp_strm->stream = msblk->decompressor->init(msblk, in squashfs_decompressor_create() 105 static void squashfs_decompressor_destroy(struct squashfs_sb_info *msblk) in squashfs_decompressor_destroy() argument 107 struct squashfs_stream *stream = msblk->stream; in squashfs_decompressor_destroy() 115 msblk->decompressor->free(decomp_strm->stream); in squashfs_decompressor_destroy() 126 static struct decomp_stream *get_decomp_stream(struct squashfs_sb_info *msblk, in get_decomp_stream() argument 147 if (stream->avail_decomp >= msblk->max_thread_num) in get_decomp_stream() 155 decomp_strm->stream = msblk->decompressor->init(msblk, in get_decomp_stream() 163 WARN_ON(stream->avail_decomp > msblk->max_thread_num); in get_decomp_stream() 182 static int squashfs_decompress(struct squashfs_sb_info *msblk, struct bio *bio, in squashfs_decompress() argument [all …]
|
D | decompressor_multi_percpu.c | 27 static void *squashfs_decompressor_create(struct squashfs_sb_info *msblk, in squashfs_decompressor_create() argument 40 stream->stream = msblk->decompressor->init(msblk, comp_opts); in squashfs_decompressor_create() 55 msblk->decompressor->free(stream->stream); in squashfs_decompressor_create() 61 static void squashfs_decompressor_destroy(struct squashfs_sb_info *msblk) in squashfs_decompressor_destroy() argument 64 (struct squashfs_stream __percpu *) msblk->stream; in squashfs_decompressor_destroy() 68 if (msblk->stream) { in squashfs_decompressor_destroy() 71 msblk->decompressor->free(stream->stream); in squashfs_decompressor_destroy() 77 static int squashfs_decompress(struct squashfs_sb_info *msblk, struct bio *bio, in squashfs_decompress() argument 82 (struct squashfs_stream __percpu *) msblk->stream; in squashfs_decompress() 88 res = msblk->decompressor->decompress(msblk, stream->stream, bio, in squashfs_decompress() [all …]
|
D | decompressor_single.c | 27 static void *squashfs_decompressor_create(struct squashfs_sb_info *msblk, in squashfs_decompressor_create() argument 37 stream->stream = msblk->decompressor->init(msblk, comp_opts); in squashfs_decompressor_create() 52 static void squashfs_decompressor_destroy(struct squashfs_sb_info *msblk) in squashfs_decompressor_destroy() argument 54 struct squashfs_stream *stream = msblk->stream; in squashfs_decompressor_destroy() 57 msblk->decompressor->free(stream->stream); in squashfs_decompressor_destroy() 62 static int squashfs_decompress(struct squashfs_sb_info *msblk, struct bio *bio, in squashfs_decompress() argument 67 struct squashfs_stream *stream = msblk->stream; in squashfs_decompress() 70 res = msblk->decompressor->decompress(msblk, stream->stream, bio, in squashfs_decompress() 76 msblk->decompressor->name); in squashfs_decompress()
|
D | block.c | 192 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_bio_read() local 193 struct address_space *cache_mapping = msblk->cache_mapping; in squashfs_bio_read() 194 const u64 read_start = round_down(index, msblk->devblksize); in squashfs_bio_read() 195 const sector_t block = read_start >> msblk->devblksize_log2; in squashfs_bio_read() 196 const u64 read_end = round_up(index + length, msblk->devblksize); in squashfs_bio_read() 197 const sector_t block_end = read_end >> msblk->devblksize_log2; in squashfs_bio_read() 199 int total_len = (block_end - block) << msblk->devblksize_log2; in squashfs_bio_read() 208 bio->bi_iter.bi_sector = block * (msblk->devblksize >> SECTOR_SHIFT); in squashfs_bio_read() 244 *block_offset = index & ((1 << msblk->devblksize_log2) - 1); in squashfs_bio_read() 266 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_read_data() local [all …]
|
D | decompressor.h | 27 static inline void *squashfs_comp_opts(struct squashfs_sb_info *msblk, in squashfs_comp_opts() argument 30 return msblk->decompressor->comp_opts ? in squashfs_comp_opts() 31 msblk->decompressor->comp_opts(msblk, buff, length) : NULL; in squashfs_comp_opts()
|
D | decompressor.c | 89 struct squashfs_sb_info *msblk = sb->s_fs_info; in get_comp_opts() local 119 comp_opts = squashfs_comp_opts(msblk, buffer, length); in get_comp_opts() 130 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_decompressor_setup() local 136 stream = msblk->thread_ops->create(msblk, comp_opts); in squashfs_decompressor_setup()
|
D | xattr_id.c | 31 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_xattr_lookup() local 38 if (index >= msblk->xattr_ids) in squashfs_xattr_lookup() 41 start_block = le64_to_cpu(msblk->xattr_id_table[block]); in squashfs_xattr_lookup() 61 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_read_xattr_id_table() local 90 end = msblk->bytes_used; in squashfs_read_xattr_id_table()
|
D | namei.c | 68 struct squashfs_sb_info *msblk = sb->s_fs_info; in get_dir_index_using_name() local 109 msblk->directory_table; in get_dir_index_using_name() 132 struct squashfs_sb_info *msblk = dir->i_sb->s_fs_info; in squashfs_lookup() local 135 u64 block = squashfs_i(dir)->start + msblk->directory_table; in squashfs_lookup() 227 squashfs_i(dir)->start + msblk->directory_table, in squashfs_lookup()
|
D | fragment.c | 38 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_frag_lookup() local 43 if (fragment >= msblk->fragments) in squashfs_frag_lookup() 48 start_block = le64_to_cpu(msblk->fragment_index[block]); in squashfs_frag_lookup()
|
D | lz4_wrapper.c | 32 static void *lz4_comp_opts(struct squashfs_sb_info *msblk, in lz4_comp_opts() argument 52 static void *lz4_init(struct squashfs_sb_info *msblk, void *buff) in lz4_init() argument 54 int block_size = max_t(int, msblk->block_size, SQUASHFS_METADATA_SIZE); in lz4_init() 91 static int lz4_uncompress(struct squashfs_sb_info *msblk, void *strm, in lz4_uncompress() argument
|
D | xattr.c | 31 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_listxattr() local 33 + msblk->xattr_table; in squashfs_listxattr() 40 if (msblk->xattr_id_table == NULL) in squashfs_listxattr() 109 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_xattr_get() local 111 + msblk->xattr_table; in squashfs_xattr_get() 162 msblk->xattr_table; in squashfs_xattr_get()
|
D | page_actor.c | 105 struct squashfs_page_actor *squashfs_page_actor_init_special(struct squashfs_sb_info *msblk, in squashfs_page_actor_init_special() argument 113 if (msblk->decompressor->alloc_buffer) { in squashfs_page_actor_init_special() 128 actor->next_index = page[0]->index & ~((1 << (msblk->block_log - PAGE_SHIFT)) - 1); in squashfs_page_actor_init_special() 131 actor->alloc_buffer = msblk->decompressor->alloc_buffer; in squashfs_page_actor_init_special()
|
D | id.c | 35 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_get_id() local 42 if (index >= msblk->ids) in squashfs_get_id() 45 start_block = le64_to_cpu(msblk->id_table[block]); in squashfs_get_id()
|
D | squashfs.h | 43 void * (*create)(struct squashfs_sb_info *msblk, void *comp_opts); 44 void (*destroy)(struct squashfs_sb_info *msblk); 45 int (*decompress)(struct squashfs_sb_info *msblk, struct bio *bio,
|
D | dir.c | 42 struct squashfs_sb_info *msblk = sb->s_fs_info; in get_dir_index_using_offset() local 85 msblk->directory_table; in get_dir_index_using_offset() 100 struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info; in squashfs_readdir() local 101 u64 block = squashfs_i(inode)->start + msblk->directory_table; in squashfs_readdir()
|
D | xz_wrapper.c | 38 static void *squashfs_xz_comp_opts(struct squashfs_sb_info *msblk, in squashfs_xz_comp_opts() argument 69 opts->dict_size = max_t(int, msblk->block_size, in squashfs_xz_comp_opts() 81 static void *squashfs_xz_init(struct squashfs_sb_info *msblk, void *buff) in squashfs_xz_init() argument 119 static int squashfs_xz_uncompress(struct squashfs_sb_info *msblk, void *strm, in squashfs_xz_uncompress() argument
|
D | file_direct.c | 27 struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info; in squashfs_readpage_block() local 30 int mask = (1 << (msblk->block_log - PAGE_SHIFT)) - 1; in squashfs_readpage_block() 70 actor = squashfs_page_actor_init_special(msblk, page, pages, expected); in squashfs_readpage_block()
|
D | lzo_wrapper.c | 28 static void *lzo_init(struct squashfs_sb_info *msblk, void *buff) in lzo_init() argument 30 int block_size = max_t(int, msblk->block_size, SQUASHFS_METADATA_SIZE); in lzo_init() 65 static int lzo_uncompress(struct squashfs_sb_info *msblk, void *strm, in lzo_uncompress() argument
|
D | cache.c | 334 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_read_metadata() local 344 entry = squashfs_cache_get(sb, msblk->block_cache, *block, 0); in squashfs_read_metadata() 382 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_get_fragment() local 384 return squashfs_cache_get(sb, msblk->fragment_cache, start_block, in squashfs_get_fragment() 397 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_get_datablock() local 399 return squashfs_cache_get(sb, msblk->read_page, start_block, length); in squashfs_get_datablock()
|
D | export.c | 41 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_inode_lookup() local 50 if (ino_num == 0 || (ino_num - 1) >= msblk->inodes) in squashfs_inode_lookup() 53 start = le64_to_cpu(msblk->inode_lookup_table[blk]); in squashfs_inode_lookup()
|
D | zstd_wrapper.c | 29 static void *zstd_init(struct squashfs_sb_info *msblk, void *buff) in zstd_init() argument 36 msblk->block_size, SQUASHFS_METADATA_SIZE); in zstd_init() 61 static int zstd_uncompress(struct squashfs_sb_info *msblk, void *strm, in zstd_uncompress() argument
|
D | symlink.c | 38 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_symlink_read_folio() local 72 entry = squashfs_cache_get(sb, msblk->block_cache, block, 0); in squashfs_symlink_read_folio()
|
D | inode.c | 103 struct squashfs_sb_info *msblk = sb->s_fs_info; in squashfs_read_inode() local 104 u64 block = SQUASHFS_INODE_BLK(ino) + msblk->inode_table; in squashfs_read_inode() 124 block = SQUASHFS_INODE_BLK(ino) + msblk->inode_table; in squashfs_read_inode() 394 if (xattr_id != SQUASHFS_INVALID_XATTR && msblk->xattr_id_table) { in squashfs_read_inode()
|