/kernel/linux/linux-5.10/fs/udf/ |
H A D | file.c | 149 down_write(&iinfo->i_data_sem); in udf_file_write_iter() 160 up_write(&iinfo->i_data_sem); in udf_file_write_iter() 164 down_write(&iinfo->i_data_sem); in udf_file_write_iter() 167 up_write(&iinfo->i_data_sem); in udf_file_write_iter() 233 down_write(&UDF_I(inode)->i_data_sem); in udf_release_file() 236 up_write(&UDF_I(inode)->i_data_sem); in udf_release_file()
|
H A D | symlink.c | 123 down_read(&iinfo->i_data_sem); in udf_symlink_filler() 142 up_read(&iinfo->i_data_sem); in udf_symlink_filler() 148 up_read(&iinfo->i_data_sem); in udf_symlink_filler()
|
H A D | inode.c | 177 down_write(&iinfo->i_data_sem); in udf_write_failed() 180 up_write(&iinfo->i_data_sem); in udf_write_failed() 251 * This function requires i_data_sem for writing and releases it. 269 up_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 274 * Release i_data_sem so that we can lock a page - page lock ranks in udf_expand_file_adinicb() 275 * above i_data_sem. i_mutex still protects us against file changes. in udf_expand_file_adinicb() 277 up_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 293 down_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 305 up_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 310 down_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() [all...] |
H A D | udf_i.h | 19 * The i_data_sem and i_mutex serve for protection of allocation information 23 * i_mutex or i_data_sem must be held (for reading is enough in case of 24 * i_data_sem). When extents are changed, i_data_sem must be held for writing 52 struct rw_semaphore i_data_sem; member
|
H A D | namei.c | 903 down_write(&iinfo->i_data_sem); in udf_symlink() 1022 up_write(&iinfo->i_data_sem); in udf_symlink() 1030 up_write(&iinfo->i_data_sem); in udf_symlink()
|
/kernel/linux/linux-5.10/fs/ext4/ |
H A D | migrate.c | 36 down_write(&EXT4_I(inode)->i_data_sem); in finish_range() 58 up_write((&EXT4_I(inode)->i_data_sem)); in finish_range() 307 down_write(&EXT4_I(inode)->i_data_sem); in ext4_ext_swap_inode_data() 315 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ext_swap_inode_data() 338 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ext_swap_inode_data() 494 * with i_data_sem held to prevent racing with block in ext4_ext_migrate() 497 down_read(&EXT4_I(inode)->i_data_sem); in ext4_ext_migrate() 499 up_read((&EXT4_I(inode)->i_data_sem)); in ext4_ext_migrate() 633 down_write(&EXT4_I(inode)->i_data_sem); in ext4_ind_migrate() 667 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ind_migrate() [all...] |
H A D | move_extent.c | 44 * ext4_double_down_write_data_sem() - write lock two inodes's i_data_sem 48 * Acquire write lock of i_data_sem of the two inodes 54 down_write(&EXT4_I(first)->i_data_sem); in ext4_double_down_write_data_sem() 55 down_write_nested(&EXT4_I(second)->i_data_sem, I_DATA_SEM_OTHER); in ext4_double_down_write_data_sem() 57 down_write(&EXT4_I(second)->i_data_sem); in ext4_double_down_write_data_sem() 58 down_write_nested(&EXT4_I(first)->i_data_sem, I_DATA_SEM_OTHER); in ext4_double_down_write_data_sem() 64 * ext4_double_up_write_data_sem - Release two inodes' write lock of i_data_sem 68 * Release write lock of i_data_sem of two inodes (orig and donor). 74 up_write(&EXT4_I(orig_inode)->i_data_sem); in ext4_double_up_write_data_sem() 75 up_write(&EXT4_I(donor_inode)->i_data_sem); in ext4_double_up_write_data_sem() [all...] |
H A D | extents.c | 97 * Drop i_data_sem to avoid deadlock with ext4_map_blocks. At this in ext4_ext_trunc_restart_fn() 100 * i_mutex. So we can safely drop the i_data_sem here. in ext4_ext_trunc_restart_fn() 104 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ext_trunc_restart_fn() 111 * transaction with 'restart_cred' credits. The function drops i_data_sem 127 down_write(&EXT4_I(inode)->i_data_sem); in ext4_datasem_ensure_credits() 171 WARN_ON(!rwsem_is_locked(&EXT4_I(inode)->i_data_sem)); in __ext4_ext_dirty() 601 down_read(&ei->i_data_sem); in ext4_ext_precache() 606 up_read(&ei->i_data_sem); in ext4_ext_precache() 613 up_read(&ei->i_data_sem); in ext4_ext_precache() 648 up_read(&ei->i_data_sem); in ext4_ext_precache() [all...] |
H A D | inode.c | 360 * Called with i_data_sem down, which is important since we can call 458 * out taking i_data_sem. So at the time the unwritten extent in ext4_map_blocks_es_recheck() 461 down_read(&EXT4_I(inode)->i_data_sem); in ext4_map_blocks_es_recheck() 467 up_read((&EXT4_I(inode)->i_data_sem)); in ext4_map_blocks_es_recheck() 491 * Otherwise it takes the write lock of the i_data_sem and allocate blocks 568 down_read(&EXT4_I(inode)->i_data_sem); in ext4_map_blocks() 597 up_read((&EXT4_I(inode)->i_data_sem)); in ext4_map_blocks() 635 * the write lock of i_data_sem, and call get_block() in ext4_map_blocks() 638 down_write(&EXT4_I(inode)->i_data_sem); in ext4_map_blocks() 713 up_write((&EXT4_I(inode)->i_data_sem)); in ext4_map_blocks() [all...] |
H A D | indirect.c | 142 * down_read(&EXT4_I(inode)->i_data_sem) 523 * down_write(&EXT4_I(inode)->i_data_sem) if allocating filesystem 525 * down_read(&EXT4_I(inode)->i_data_sem) if not allocating file system 709 * Drop i_data_sem to avoid deadlock with ext4_map_blocks. At this in ext4_ind_trunc_restart_fn() 712 * i_mutex. So we can safely drop the i_data_sem here. in ext4_ind_trunc_restart_fn() 716 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ind_trunc_restart_fn() 741 down_write(&EXT4_I(inode)->i_data_sem); in ext4_ind_truncate_ensure_credits()
|
H A D | file.c | 149 down_write(&EXT4_I(inode)->i_data_sem); in ext4_release_file() 151 up_write(&EXT4_I(inode)->i_data_sem); in ext4_release_file()
|
H A D | fast_commit.c | 1687 down_write(&EXT4_I(inode)->i_data_sem); in ext4_fc_replay_add_range() 1690 up_write((&EXT4_I(inode)->i_data_sem)); in ext4_fc_replay_add_range() 1794 down_write(&EXT4_I(inode)->i_data_sem); in ext4_fc_replay_del_range() 1798 up_write(&EXT4_I(inode)->i_data_sem); in ext4_fc_replay_del_range()
|
H A D | inline.c | 1922 down_write(&EXT4_I(inode)->i_data_sem); in ext4_inline_data_truncate() 1968 up_write(&EXT4_I(inode)->i_data_sem); in ext4_inline_data_truncate()
|
/kernel/linux/linux-6.6/fs/ext4/ |
H A D | migrate.c | 36 down_write(&EXT4_I(inode)->i_data_sem); in finish_range() 58 up_write((&EXT4_I(inode)->i_data_sem)); in finish_range() 306 down_write(&EXT4_I(inode)->i_data_sem); in ext4_ext_swap_inode_data() 314 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ext_swap_inode_data() 337 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ext_swap_inode_data() 493 * with i_data_sem held to prevent racing with block in ext4_ext_migrate() 496 down_read(&EXT4_I(inode)->i_data_sem); in ext4_ext_migrate() 498 up_read((&EXT4_I(inode)->i_data_sem)); in ext4_ext_migrate() 633 down_write(&EXT4_I(inode)->i_data_sem); in ext4_ind_migrate() 667 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ind_migrate() [all...] |
H A D | move_extent.c | 44 * ext4_double_down_write_data_sem() - write lock two inodes's i_data_sem 48 * Acquire write lock of i_data_sem of the two inodes 54 down_write(&EXT4_I(first)->i_data_sem); in ext4_double_down_write_data_sem() 55 down_write_nested(&EXT4_I(second)->i_data_sem, I_DATA_SEM_OTHER); in ext4_double_down_write_data_sem() 57 down_write(&EXT4_I(second)->i_data_sem); in ext4_double_down_write_data_sem() 58 down_write_nested(&EXT4_I(first)->i_data_sem, I_DATA_SEM_OTHER); in ext4_double_down_write_data_sem() 64 * ext4_double_up_write_data_sem - Release two inodes' write lock of i_data_sem 68 * Release write lock of i_data_sem of two inodes (orig and donor). 74 up_write(&EXT4_I(orig_inode)->i_data_sem); in ext4_double_up_write_data_sem() 75 up_write(&EXT4_I(donor_inode)->i_data_sem); in ext4_double_up_write_data_sem() [all...] |
H A D | extents.c | 97 * Drop i_data_sem to avoid deadlock with ext4_map_blocks. At this in ext4_ext_trunc_restart_fn() 100 * i_rwsem. So we can safely drop the i_data_sem here. in ext4_ext_trunc_restart_fn() 104 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ext_trunc_restart_fn() 130 * transaction with 'restart_cred' credits. The function drops i_data_sem 146 down_write(&EXT4_I(inode)->i_data_sem); in ext4_datasem_ensure_credits() 191 WARN_ON(!rwsem_is_locked(&EXT4_I(inode)->i_data_sem)); in __ext4_ext_dirty() 610 down_read(&ei->i_data_sem); in ext4_ext_precache() 615 up_read(&ei->i_data_sem); in ext4_ext_precache() 622 up_read(&ei->i_data_sem); in ext4_ext_precache() 657 up_read(&ei->i_data_sem); in ext4_ext_precache() [all...] |
H A D | inode.c | 329 * Called with i_data_sem down, which is important since we can call 427 * out taking i_data_sem. So at the time the unwritten extent in ext4_map_blocks_es_recheck() 430 down_read(&EXT4_I(inode)->i_data_sem); in ext4_map_blocks_es_recheck() 436 up_read((&EXT4_I(inode)->i_data_sem)); in ext4_map_blocks_es_recheck() 460 * Otherwise it takes the write lock of the i_data_sem and allocate blocks 546 down_read(&EXT4_I(inode)->i_data_sem); in ext4_map_blocks() 573 up_read((&EXT4_I(inode)->i_data_sem)); in ext4_map_blocks() 611 * the write lock of i_data_sem, and call get_block() in ext4_map_blocks() 614 down_write(&EXT4_I(inode)->i_data_sem); in ext4_map_blocks() 685 up_write((&EXT4_I(inode)->i_data_sem)); in ext4_map_blocks() [all...] |
H A D | file.c | 176 down_write(&EXT4_I(inode)->i_data_sem); in ext4_release_file() 178 up_write(&EXT4_I(inode)->i_data_sem); in ext4_release_file() 416 * we protect splitting extents by i_data_sem in ext4_inode_info, so we can
|
H A D | fast_commit.c | 1779 down_write(&EXT4_I(inode)->i_data_sem); in ext4_fc_replay_add_range() 1782 up_write((&EXT4_I(inode)->i_data_sem)); in ext4_fc_replay_add_range() 1885 down_write(&EXT4_I(inode)->i_data_sem); in ext4_fc_replay_del_range() 1889 up_write(&EXT4_I(inode)->i_data_sem); in ext4_fc_replay_del_range()
|
H A D | indirect.c | 142 * down_read(&EXT4_I(inode)->i_data_sem) 525 * down_write(&EXT4_I(inode)->i_data_sem) if allocating filesystem 527 * down_read(&EXT4_I(inode)->i_data_sem) if not allocating file system 711 * Drop i_data_sem to avoid deadlock with ext4_map_blocks. At this in ext4_ind_trunc_restart_fn() 714 * i_rwsem. So we can safely drop the i_data_sem here. in ext4_ind_trunc_restart_fn() 718 up_write(&EXT4_I(inode)->i_data_sem); in ext4_ind_trunc_restart_fn() 743 down_write(&EXT4_I(inode)->i_data_sem); in ext4_ind_truncate_ensure_credits()
|
H A D | inline.c | 1930 down_write(&EXT4_I(inode)->i_data_sem); in ext4_inline_data_truncate() 1985 up_write(&EXT4_I(inode)->i_data_sem); in ext4_inline_data_truncate()
|
/kernel/linux/linux-6.6/fs/udf/ |
H A D | file.c | 114 down_write(&iinfo->i_data_sem); in udf_file_write_iter() 116 up_write(&iinfo->i_data_sem); in udf_file_write_iter() 183 down_write(&UDF_I(inode)->i_data_sem); in udf_release_file() 186 up_write(&UDF_I(inode)->i_data_sem); in udf_release_file()
|
H A D | inode.c | 176 down_write(&iinfo->i_data_sem); in udf_write_failed() 179 up_write(&iinfo->i_data_sem); in udf_write_failed() 350 down_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 355 up_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 366 down_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 376 up_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 381 down_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 387 up_write(&iinfo->i_data_sem); in udf_expand_file_adinicb() 423 down_read(&iinfo->i_data_sem); in udf_map_block() 430 up_read(&iinfo->i_data_sem); in udf_map_block() [all...] |
H A D | udf_i.h | 19 * The i_data_sem and i_mutex serve for protection of allocation information 23 * i_mutex or i_data_sem must be held (for reading is enough in case of 24 * i_data_sem). When extents are changed, i_data_sem must be held for writing 52 struct rw_semaphore i_data_sem; member
|
H A D | namei.c | 590 down_write(&iinfo->i_data_sem); in udf_symlink() 714 up_write(&iinfo->i_data_sem); in udf_symlink() 722 up_write(&iinfo->i_data_sem); in udf_symlink()
|