Lines Matching refs:handle

166 	handle_t *handle;  in ext4_evict_inode()  local
223 handle = ext4_journal_start(inode, EXT4_HT_TRUNCATE, in ext4_evict_inode()
225 if (IS_ERR(handle)) { in ext4_evict_inode()
226 ext4_std_error(inode->i_sb, PTR_ERR(handle)); in ext4_evict_inode()
239 ext4_handle_sync(handle); in ext4_evict_inode()
251 err = ext4_mark_inode_dirty(handle, inode); in ext4_evict_inode()
268 err = ext4_xattr_delete_inode(handle, inode, &ea_inode_array, in ext4_evict_inode()
273 ext4_journal_stop(handle); in ext4_evict_inode()
289 ext4_orphan_del(handle, inode); in ext4_evict_inode()
299 if (ext4_mark_inode_dirty(handle, inode)) in ext4_evict_inode()
303 ext4_free_inode(handle, inode); in ext4_evict_inode()
304 ext4_journal_stop(handle); in ext4_evict_inode()
414 static void ext4_map_blocks_es_recheck(handle_t *handle, in ext4_map_blocks_es_recheck() argument
432 retval = ext4_ext_map_blocks(handle, inode, map, 0); in ext4_map_blocks_es_recheck()
434 retval = ext4_ind_map_blocks(handle, inode, map, 0); in ext4_map_blocks_es_recheck()
456 static int ext4_map_query_blocks(handle_t *handle, struct inode *inode, in ext4_map_query_blocks() argument
463 retval = ext4_ext_map_blocks(handle, inode, map, 0); in ext4_map_query_blocks()
465 retval = ext4_ind_map_blocks(handle, inode, map, 0); in ext4_map_query_blocks()
507 int ext4_map_blocks(handle_t *handle, struct inode *inode, in ext4_map_blocks() argument
559 ext4_map_blocks_es_recheck(handle, inode, map, in ext4_map_blocks()
577 retval = ext4_ext_map_blocks(handle, inode, map, 0); in ext4_map_blocks()
579 retval = ext4_ind_map_blocks(handle, inode, map, 0); in ext4_map_blocks()
650 retval = ext4_ext_map_blocks(handle, inode, map, flags); in ext4_map_blocks()
652 retval = ext4_ind_map_blocks(handle, inode, map, flags); in ext4_map_blocks()
735 ret = ext4_jbd2_inode_add_wait(handle, inode, in ext4_map_blocks()
738 ret = ext4_jbd2_inode_add_write(handle, inode, in ext4_map_blocks()
746 ext4_fc_track_range(handle, inode, map->m_lblk, in ext4_map_blocks()
845 struct buffer_head *ext4_getblk(handle_t *handle, struct inode *inode, in ext4_getblk() argument
855 || handle != NULL || create == 0); in ext4_getblk()
860 err = ext4_map_blocks(handle, inode, &map, map_flags); in ext4_getblk()
876 || (handle != NULL)); in ext4_getblk()
887 err = ext4_journal_get_create_access(handle, inode->i_sb, bh, in ext4_getblk()
899 err = ext4_handle_dirty_metadata(handle, inode, bh); in ext4_getblk()
910 struct buffer_head *ext4_bread(handle_t *handle, struct inode *inode, in ext4_bread() argument
916 bh = ext4_getblk(handle, inode, block, map_flags); in ext4_bread()
973 int ext4_walk_page_buffers(handle_t *handle, struct inode *inode, in ext4_walk_page_buffers() argument
978 int (*fn)(handle_t *handle, struct inode *inode, in ext4_walk_page_buffers() argument
997 err = (*fn)(handle, inode, bh); in ext4_walk_page_buffers()
1010 static int ext4_dirty_journalled_data(handle_t *handle, struct buffer_head *bh) in ext4_dirty_journalled_data() argument
1013 return ext4_handle_dirty_metadata(handle, NULL, bh); in ext4_dirty_journalled_data()
1016 int do_journal_get_write_access(handle_t *handle, struct inode *inode, in do_journal_get_write_access() argument
1035 ret = ext4_journal_get_write_access(handle, inode->i_sb, bh, in do_journal_get_write_access()
1038 ret = ext4_dirty_journalled_data(handle, bh); in do_journal_get_write_access()
1152 handle_t *handle; in ext4_write_begin() local
1202 handle = ext4_journal_start(inode, EXT4_HT_WRITE_PAGE, needed_blocks); in ext4_write_begin()
1203 if (IS_ERR(handle)) { in ext4_write_begin()
1205 return PTR_ERR(handle); in ext4_write_begin()
1213 ext4_journal_stop(handle); in ext4_write_begin()
1233 ret = ext4_walk_page_buffers(handle, inode, in ext4_write_begin()
1252 ext4_orphan_add(handle, inode); in ext4_write_begin()
1254 ext4_journal_stop(handle); in ext4_write_begin()
1278 static int write_end_fn(handle_t *handle, struct inode *inode, in write_end_fn() argument
1285 ret = ext4_dirty_journalled_data(handle, bh); in write_end_fn()
1304 handle_t *handle = ext4_journal_current_handle(); in ext4_write_end() local
1340 ret = ext4_mark_inode_dirty(handle, inode); in ext4_write_end()
1347 ext4_orphan_add(handle, inode); in ext4_write_end()
1349 ret2 = ext4_journal_stop(handle); in ext4_write_end()
1372 static void ext4_journalled_zero_new_buffers(handle_t *handle, in ext4_journalled_zero_new_buffers() argument
1392 write_end_fn(handle, inode, bh); in ext4_journalled_zero_new_buffers()
1408 handle_t *handle = ext4_journal_current_handle(); in ext4_journalled_write_end() local
1421 BUG_ON(!ext4_handle_valid(handle)); in ext4_journalled_write_end()
1429 ext4_journalled_zero_new_buffers(handle, inode, folio, in ext4_journalled_write_end()
1433 ext4_journalled_zero_new_buffers(handle, inode, folio, in ext4_journalled_write_end()
1435 ret = ext4_walk_page_buffers(handle, inode, in ext4_journalled_write_end()
1444 EXT4_I(inode)->i_datasync_tid = handle->h_transaction->t_tid; in ext4_journalled_write_end()
1452 ret2 = ext4_mark_inode_dirty(handle, inode); in ext4_journalled_write_end()
1462 ext4_orphan_add(handle, inode); in ext4_journalled_write_end()
1464 ret2 = ext4_journal_stop(handle); in ext4_journalled_write_end()
2159 static int mpage_map_one_extent(handle_t *handle, struct mpage_da_data *mpd) in mpage_map_one_extent() argument
2191 err = ext4_map_blocks(handle, inode, map, get_blocks_flags); in mpage_map_one_extent()
2195 if (!mpd->io_submit.io_end->handle && in mpage_map_one_extent()
2196 ext4_handle_valid(handle)) { in mpage_map_one_extent()
2197 mpd->io_submit.io_end->handle = handle->h_rsv_handle; in mpage_map_one_extent()
2198 handle->h_rsv_handle = NULL; in mpage_map_one_extent()
2227 static int mpage_map_and_submit_extent(handle_t *handle, in mpage_map_and_submit_extent() argument
2244 err = mpage_map_one_extent(handle, mpd); in mpage_map_and_submit_extent()
2304 err2 = ext4_mark_inode_dirty(handle, inode); in mpage_map_and_submit_extent()
2331 static int ext4_journal_folio_buffers(handle_t *handle, struct folio *folio, in ext4_journal_folio_buffers() argument
2338 ret = ext4_walk_page_buffers(handle, inode, page_bufs, 0, len, in ext4_journal_folio_buffers()
2340 err = ext4_walk_page_buffers(handle, inode, page_bufs, 0, len, in ext4_journal_folio_buffers()
2344 err = ext4_jbd2_inode_add_write(handle, inode, folio_pos(folio), len); in ext4_journal_folio_buffers()
2347 EXT4_I(inode)->i_datasync_tid = handle->h_transaction->t_tid; in ext4_journal_folio_buffers()
2352 static int mpage_journal_page_buffers(handle_t *handle, in mpage_journal_page_buffers() argument
2367 return ext4_journal_folio_buffers(handle, folio, len); in mpage_journal_page_buffers()
2402 handle_t *handle = NULL; in mpage_prepare_extent_to_map() local
2413 handle = ext4_journal_start(mpd->inode, EXT4_HT_WRITE_PAGE, in mpage_prepare_extent_to_map()
2415 if (IS_ERR(handle)) in mpage_prepare_extent_to_map()
2416 return PTR_ERR(handle); in mpage_prepare_extent_to_map()
2445 if (handle) { in mpage_prepare_extent_to_map()
2446 err = ext4_journal_ensure_credits(handle, bpp, in mpage_prepare_extent_to_map()
2506 err = mpage_journal_page_buffers(handle, in mpage_prepare_extent_to_map()
2529 if (handle) in mpage_prepare_extent_to_map()
2530 ext4_journal_stop(handle); in mpage_prepare_extent_to_map()
2534 if (handle) in mpage_prepare_extent_to_map()
2535 ext4_journal_stop(handle); in mpage_prepare_extent_to_map()
2546 handle_t *handle = NULL; in ext4_do_writepages() local
2586 handle = ext4_journal_start(inode, EXT4_HT_INODE, 1); in ext4_do_writepages()
2587 if (IS_ERR(handle)) { in ext4_do_writepages()
2588 ret = PTR_ERR(handle); in ext4_do_writepages()
2593 ext4_destroy_inline_data(handle, inode); in ext4_do_writepages()
2594 ext4_journal_stop(handle); in ext4_do_writepages()
2690 handle = ext4_journal_start_with_reserve(inode, in ext4_do_writepages()
2692 if (IS_ERR(handle)) { in ext4_do_writepages()
2693 ret = PTR_ERR(handle); in ext4_do_writepages()
2707 ret = mpage_map_and_submit_extent(handle, mpd, in ext4_do_writepages()
2719 if (!ext4_handle_valid(handle) || handle->h_sync == 0) { in ext4_do_writepages()
2720 ext4_journal_stop(handle); in ext4_do_writepages()
2721 handle = NULL; in ext4_do_writepages()
2736 if (handle) { in ext4_do_writepages()
2738 ext4_journal_stop(handle); in ext4_do_writepages()
3022 handle_t *handle; in ext4_da_do_write_end() local
3024 handle = ext4_journal_start(inode, EXT4_HT_INODE, 2); in ext4_da_do_write_end()
3025 if (IS_ERR(handle)) in ext4_da_do_write_end()
3026 return PTR_ERR(handle); in ext4_da_do_write_end()
3027 ext4_mark_inode_dirty(handle, inode); in ext4_da_do_write_end()
3028 ext4_journal_stop(handle); in ext4_da_do_write_end()
3304 handle_t *handle; in ext4_iomap_alloc() local
3323 handle = ext4_journal_start(inode, EXT4_HT_MAP_BLOCKS, dio_credits); in ext4_iomap_alloc()
3324 if (IS_ERR(handle)) in ext4_iomap_alloc()
3325 return PTR_ERR(handle); in ext4_iomap_alloc()
3345 ret = ext4_map_blocks(handle, inode, map, m_flags); in ext4_iomap_alloc()
3355 ext4_journal_stop(handle); in ext4_iomap_alloc()
3658 static int __ext4_block_zero_page_range(handle_t *handle, in __ext4_block_zero_page_range() argument
3729 err = ext4_journal_get_write_access(handle, inode->i_sb, bh, in __ext4_block_zero_page_range()
3738 err = ext4_dirty_journalled_data(handle, bh); in __ext4_block_zero_page_range()
3743 err = ext4_jbd2_inode_add_write(handle, inode, from, in __ext4_block_zero_page_range()
3760 static int ext4_block_zero_page_range(handle_t *handle, in ext4_block_zero_page_range() argument
3779 return __ext4_block_zero_page_range(handle, mapping, from, length); in ext4_block_zero_page_range()
3788 static int ext4_block_truncate_page(handle_t *handle, in ext4_block_truncate_page() argument
3803 return ext4_block_zero_page_range(handle, mapping, from, length); in ext4_block_truncate_page()
3806 int ext4_zero_partial_blocks(handle_t *handle, struct inode *inode, in ext4_zero_partial_blocks() argument
3825 err = ext4_block_zero_page_range(handle, mapping, in ext4_zero_partial_blocks()
3831 err = ext4_block_zero_page_range(handle, mapping, in ext4_zero_partial_blocks()
3838 err = ext4_block_zero_page_range(handle, mapping, in ext4_zero_partial_blocks()
3864 handle_t *handle; in ext4_update_disksize_before_punch() local
3876 handle = ext4_journal_start(inode, EXT4_HT_MISC, 1); in ext4_update_disksize_before_punch()
3877 if (IS_ERR(handle)) in ext4_update_disksize_before_punch()
3878 return PTR_ERR(handle); in ext4_update_disksize_before_punch()
3880 ret = ext4_mark_inode_dirty(handle, inode); in ext4_update_disksize_before_punch()
3881 ext4_journal_stop(handle); in ext4_update_disksize_before_punch()
3934 handle_t *handle; in ext4_punch_hole() local
4020 handle = ext4_journal_start(inode, EXT4_HT_TRUNCATE, credits); in ext4_punch_hole()
4021 if (IS_ERR(handle)) { in ext4_punch_hole()
4022 ret = PTR_ERR(handle); in ext4_punch_hole()
4027 ret = ext4_zero_partial_blocks(handle, inode, offset, in ext4_punch_hole()
4049 ret = ext4_ind_remove_space(handle, inode, first_block, in ext4_punch_hole()
4054 ext4_fc_track_range(handle, inode, first_block, stop_block); in ext4_punch_hole()
4056 ext4_handle_sync(handle); in ext4_punch_hole()
4059 ret2 = ext4_mark_inode_dirty(handle, inode); in ext4_punch_hole()
4063 ext4_update_inode_fsync_trans(handle, inode, 1); in ext4_punch_hole()
4065 ext4_journal_stop(handle); in ext4_punch_hole()
4131 handle_t *handle; in ext4_truncate() local
4169 handle = ext4_journal_start(inode, EXT4_HT_TRUNCATE, credits); in ext4_truncate()
4170 if (IS_ERR(handle)) { in ext4_truncate()
4171 err = PTR_ERR(handle); in ext4_truncate()
4176 ext4_block_truncate_page(handle, mapping, inode->i_size); in ext4_truncate()
4187 err = ext4_orphan_add(handle, inode); in ext4_truncate()
4196 err = ext4_ext_truncate(handle, inode); in ext4_truncate()
4198 ext4_ind_truncate(handle, inode); in ext4_truncate()
4205 ext4_handle_sync(handle); in ext4_truncate()
4216 ext4_orphan_del(handle, inode); in ext4_truncate()
4219 err2 = ext4_mark_inode_dirty(handle, inode); in ext4_truncate()
4222 ext4_journal_stop(handle); in ext4_truncate()
5101 static int ext4_do_update_inode(handle_t *handle, in ext4_do_update_inode() argument
5141 err = ext4_handle_dirty_metadata(handle, NULL, bh); in ext4_do_update_inode()
5147 err = ext4_journal_get_write_access(handle, sb, in ext4_do_update_inode()
5156 ext4_handle_sync(handle); in ext4_do_update_inode()
5157 err = ext4_handle_dirty_metadata(handle, NULL, in ext4_do_update_inode()
5160 ext4_update_inode_fsync_trans(handle, inode, need_datasync); in ext4_do_update_inode()
5360 handle_t *handle; in ext4_setattr() local
5364 handle = ext4_journal_start(inode, EXT4_HT_QUOTA, in ext4_setattr()
5367 if (IS_ERR(handle)) { in ext4_setattr()
5368 error = PTR_ERR(handle); in ext4_setattr()
5380 ext4_journal_stop(handle); in ext4_setattr()
5387 error = ext4_mark_inode_dirty(handle, inode); in ext4_setattr()
5388 ext4_journal_stop(handle); in ext4_setattr()
5395 handle_t *handle; in ext4_setattr() local
5437 handle = ext4_journal_start(inode, EXT4_HT_INODE, 3); in ext4_setattr()
5438 if (IS_ERR(handle)) { in ext4_setattr()
5439 error = PTR_ERR(handle); in ext4_setattr()
5442 if (ext4_handle_valid(handle) && shrink) { in ext4_setattr()
5443 error = ext4_orphan_add(handle, inode); in ext4_setattr()
5454 ext4_fc_track_range(handle, inode, in ext4_setattr()
5460 handle, inode, in ext4_setattr()
5469 rc = ext4_mark_inode_dirty(handle, inode); in ext4_setattr()
5482 ext4_journal_stop(handle); in ext4_setattr()
5743 int ext4_mark_iloc_dirty(handle_t *handle, in ext4_mark_iloc_dirty() argument
5752 ext4_fc_track_inode(handle, inode); in ext4_mark_iloc_dirty()
5758 err = ext4_do_update_inode(handle, inode, iloc); in ext4_mark_iloc_dirty()
5769 ext4_reserve_inode_write(handle_t *handle, struct inode *inode, in ext4_reserve_inode_write() argument
5780 err = ext4_journal_get_write_access(handle, inode->i_sb, in ext4_reserve_inode_write()
5794 handle_t *handle, int *no_expand) in __ext4_expand_extra_isize() argument
5839 raw_inode, handle); in __ext4_expand_extra_isize()
5857 handle_t *handle) in ext4_try_to_expand_extra_isize() argument
5874 if (ext4_journal_extend(handle, in ext4_try_to_expand_extra_isize()
5882 handle, &no_expand); in ext4_try_to_expand_extra_isize()
5892 handle_t *handle; in ext4_expand_extra_isize() local
5901 handle = ext4_journal_start(inode, EXT4_HT_INODE, in ext4_expand_extra_isize()
5903 if (IS_ERR(handle)) { in ext4_expand_extra_isize()
5904 error = PTR_ERR(handle); in ext4_expand_extra_isize()
5912 error = ext4_journal_get_write_access(handle, inode->i_sb, iloc->bh, in ext4_expand_extra_isize()
5920 handle, &no_expand); in ext4_expand_extra_isize()
5922 rc = ext4_mark_iloc_dirty(handle, inode, iloc); in ext4_expand_extra_isize()
5928 ext4_journal_stop(handle); in ext4_expand_extra_isize()
5945 int __ext4_mark_inode_dirty(handle_t *handle, struct inode *inode, in __ext4_mark_inode_dirty() argument
5954 err = ext4_reserve_inode_write(handle, inode, &iloc); in __ext4_mark_inode_dirty()
5960 iloc, handle); in __ext4_mark_inode_dirty()
5962 err = ext4_mark_iloc_dirty(handle, inode, &iloc); in __ext4_mark_inode_dirty()
5986 handle_t *handle; in ext4_dirty_inode() local
5988 handle = ext4_journal_start(inode, EXT4_HT_INODE, 2); in ext4_dirty_inode()
5989 if (IS_ERR(handle)) in ext4_dirty_inode()
5991 ext4_mark_inode_dirty(handle, inode); in ext4_dirty_inode()
5992 ext4_journal_stop(handle); in ext4_dirty_inode()
5998 handle_t *handle; in ext4_change_inode_journal_flag() local
6070 handle = ext4_journal_start(inode, EXT4_HT_INODE, 1); in ext4_change_inode_journal_flag()
6071 if (IS_ERR(handle)) in ext4_change_inode_journal_flag()
6072 return PTR_ERR(handle); in ext4_change_inode_journal_flag()
6075 EXT4_FC_REASON_JOURNAL_FLAG_CHANGE, handle); in ext4_change_inode_journal_flag()
6076 err = ext4_mark_inode_dirty(handle, inode); in ext4_change_inode_journal_flag()
6077 ext4_handle_sync(handle); in ext4_change_inode_journal_flag()
6078 ext4_journal_stop(handle); in ext4_change_inode_journal_flag()
6084 static int ext4_bh_unmapped(handle_t *handle, struct inode *inode, in ext4_bh_unmapped() argument
6101 handle_t *handle; in ext4_page_mkwrite() local
6173 handle = ext4_journal_start(inode, EXT4_HT_WRITE_PAGE, in ext4_page_mkwrite()
6175 if (IS_ERR(handle)) { in ext4_page_mkwrite()
6202 if (ext4_journal_folio_buffers(handle, folio, len)) in ext4_page_mkwrite()
6208 ext4_journal_stop(handle); in ext4_page_mkwrite()
6219 ext4_journal_stop(handle); in ext4_page_mkwrite()