Lines Matching refs:bs
1795 struct ext4_xattr_block_find *bs) in ext4_xattr_block_find() argument
1805 bs->bh = ext4_sb_bread(sb, EXT4_I(inode)->i_file_acl, REQ_PRIO); in ext4_xattr_block_find()
1806 if (IS_ERR(bs->bh)) { in ext4_xattr_block_find()
1807 error = PTR_ERR(bs->bh); in ext4_xattr_block_find()
1808 bs->bh = NULL; in ext4_xattr_block_find()
1811 ea_bdebug(bs->bh, "b_count=%d, refcount=%d", in ext4_xattr_block_find()
1812 atomic_read(&(bs->bh->b_count)), in ext4_xattr_block_find()
1813 le32_to_cpu(BHDR(bs->bh)->h_refcount)); in ext4_xattr_block_find()
1814 error = ext4_xattr_check_block(inode, bs->bh); in ext4_xattr_block_find()
1818 bs->s.base = BHDR(bs->bh); in ext4_xattr_block_find()
1819 bs->s.first = BFIRST(bs->bh); in ext4_xattr_block_find()
1820 bs->s.end = bs->bh->b_data + bs->bh->b_size; in ext4_xattr_block_find()
1821 bs->s.here = bs->s.first; in ext4_xattr_block_find()
1822 error = xattr_find_entry(inode, &bs->s.here, bs->s.end, in ext4_xattr_block_find()
1826 bs->s.not_found = error; in ext4_xattr_block_find()
1834 struct ext4_xattr_block_find *bs) in ext4_xattr_block_set() argument
1838 struct ext4_xattr_search s_copy = bs->s; in ext4_xattr_block_set()
1851 BUFFER_TRACE(bs->bh, "get_write_access"); in ext4_xattr_block_set()
1852 error = ext4_journal_get_write_access(handle, bs->bh); in ext4_xattr_block_set()
1855 lock_buffer(bs->bh); in ext4_xattr_block_set()
1858 __u32 hash = le32_to_cpu(BHDR(bs->bh)->h_hash); in ext4_xattr_block_set()
1867 bs->bh->b_blocknr); in ext4_xattr_block_set()
1868 ea_bdebug(bs->bh, "modifying in-place"); in ext4_xattr_block_set()
1871 ext4_xattr_block_csum_set(inode, bs->bh); in ext4_xattr_block_set()
1872 unlock_buffer(bs->bh); in ext4_xattr_block_set()
1878 bs->bh); in ext4_xattr_block_set()
1883 int offset = (char *)s->here - bs->bh->b_data; in ext4_xattr_block_set()
1885 unlock_buffer(bs->bh); in ext4_xattr_block_set()
1886 ea_bdebug(bs->bh, "cloning"); in ext4_xattr_block_set()
1887 s->base = kmalloc(bs->bh->b_size, GFP_NOFS); in ext4_xattr_block_set()
1891 memcpy(s->base, BHDR(bs->bh), bs->bh->b_size); in ext4_xattr_block_set()
1895 s->end = s->base + bs->bh->b_size; in ext4_xattr_block_set()
1971 if (new_bh == bs->bh) in ext4_xattr_block_set()
2035 } else if (bs->bh && s->base == bs->bh->b_data) { in ext4_xattr_block_set()
2037 ea_bdebug(bs->bh, "keeping this block"); in ext4_xattr_block_set()
2038 ext4_xattr_block_cache_insert(ea_block_cache, bs->bh); in ext4_xattr_block_set()
2039 new_bh = bs->bh; in ext4_xattr_block_set()
2115 if (bs->bh && bs->bh != new_bh) { in ext4_xattr_block_set()
2118 ext4_xattr_release_block(handle, inode, bs->bh, in ext4_xattr_block_set()
2143 if (!(bs->bh && s->base == bs->bh->b_data)) in ext4_xattr_block_set()
2295 struct ext4_xattr_block_find bs = { in ext4_xattr_set_handle() local
2344 error = ext4_xattr_block_find(inode, &i, &bs); in ext4_xattr_set_handle()
2347 if (is.s.not_found && bs.s.not_found) { in ext4_xattr_set_handle()
2363 else if (!bs.s.not_found) in ext4_xattr_set_handle()
2364 error = ext4_xattr_block_set(handle, inode, &i, &bs); in ext4_xattr_set_handle()
2370 if (!bs.s.not_found && ext4_xattr_value_same(&bs.s, &i)) in ext4_xattr_set_handle()
2379 if (!error && !bs.s.not_found) { in ext4_xattr_set_handle()
2381 error = ext4_xattr_block_set(handle, inode, &i, &bs); in ext4_xattr_set_handle()
2383 if (EXT4_I(inode)->i_file_acl && !bs.s.base) { in ext4_xattr_set_handle()
2384 brelse(bs.bh); in ext4_xattr_set_handle()
2385 bs.bh = NULL; in ext4_xattr_set_handle()
2386 error = ext4_xattr_block_find(inode, &i, &bs); in ext4_xattr_set_handle()
2390 error = ext4_xattr_block_set(handle, inode, &i, &bs); in ext4_xattr_set_handle()
2426 brelse(bs.bh); in ext4_xattr_set_handle()
2539 struct ext4_xattr_block_find *bs = NULL; in ext4_xattr_move_to_block() local
2552 bs = kzalloc(sizeof(struct ext4_xattr_block_find), GFP_NOFS); in ext4_xattr_move_to_block()
2555 if (!is || !bs || !buffer || !b_entry_name) { in ext4_xattr_move_to_block()
2561 bs->s.not_found = -ENODATA; in ext4_xattr_move_to_block()
2563 bs->bh = NULL; in ext4_xattr_move_to_block()
2594 error = ext4_xattr_block_find(inode, &i, bs); in ext4_xattr_move_to_block()
2599 error = ext4_xattr_block_set(handle, inode, &i, bs); in ext4_xattr_move_to_block()
2608 if (bs) in ext4_xattr_move_to_block()
2609 brelse(bs->bh); in ext4_xattr_move_to_block()
2611 kfree(bs); in ext4_xattr_move_to_block()