Lines Matching defs:sbi
171 bool f2fs_need_SSR(struct f2fs_sb_info *sbi) in f2fs_need_SSR()
227 struct f2fs_sb_info *sbi = F2FS_I_SB(inode); in __replace_atomic_write_block() local
310 struct f2fs_sb_info *sbi = F2FS_I_SB(inode); in __f2fs_commit_atomic_write() local
392 struct f2fs_sb_info *sbi = F2FS_I_SB(inode); in f2fs_commit_atomic_write() local
415 void f2fs_balance_fs(struct f2fs_sb_info *sbi, bool need) in f2fs_balance_fs()
460 static inline bool excess_dirty_threshold(struct f2fs_sb_info *sbi) in excess_dirty_threshold()
479 void f2fs_balance_fs_bg(struct f2fs_sb_info *sbi, bool from_bg) in f2fs_balance_fs_bg()
537 static int __submit_flush_wait(struct f2fs_sb_info *sbi, in __submit_flush_wait()
549 static int submit_flush_wait(struct f2fs_sb_info *sbi, nid_t ino) in submit_flush_wait()
569 struct f2fs_sb_info *sbi = data; in issue_flush_thread() local
601 int f2fs_issue_flush(struct f2fs_sb_info *sbi, nid_t ino) in f2fs_issue_flush()
672 int f2fs_create_flush_cmd_control(struct f2fs_sb_info *sbi) in f2fs_create_flush_cmd_control()
708 void f2fs_destroy_flush_cmd_control(struct f2fs_sb_info *sbi, bool free) in f2fs_destroy_flush_cmd_control()
724 int f2fs_flush_device_cache(struct f2fs_sb_info *sbi) in f2fs_flush_device_cache()
760 static void __locate_dirty_segment(struct f2fs_sb_info *sbi, unsigned int segno, in __locate_dirty_segment()
799 static void __remove_dirty_segment(struct f2fs_sb_info *sbi, unsigned int segno, in __remove_dirty_segment()
843 static void locate_dirty_segment(struct f2fs_sb_info *sbi, unsigned int segno) in locate_dirty_segment()
873 void f2fs_dirty_to_prefree(struct f2fs_sb_info *sbi) in f2fs_dirty_to_prefree()
890 block_t f2fs_get_unusable_blocks(struct f2fs_sb_info *sbi) in f2fs_get_unusable_blocks()
919 int f2fs_disable_cp_again(struct f2fs_sb_info *sbi, block_t unusable) in f2fs_disable_cp_again()
937 static unsigned int get_free_segment(struct f2fs_sb_info *sbi) in get_free_segment()
955 static struct discard_cmd *__create_discard_cmd(struct f2fs_sb_info *sbi, in __create_discard_cmd()
987 static bool f2fs_check_discard_tree(struct f2fs_sb_info *sbi) in f2fs_check_discard_tree()
1015 static struct discard_cmd *__lookup_discard_cmd(struct f2fs_sb_info *sbi, in __lookup_discard_cmd()
1107 static void __remove_discard_cmd(struct f2fs_sb_info *sbi, in __remove_discard_cmd()
1151 static void __check_sit_bitmap(struct f2fs_sb_info *sbi, in __check_sit_bitmap()
1177 static void __init_discard_policy(struct f2fs_sb_info *sbi, in __init_discard_policy()
1229 static void __submit_zone_reset_cmd(struct f2fs_sb_info *sbi, in __submit_zone_reset_cmd()
1267 static int __submit_discard_cmd(struct f2fs_sb_info *sbi, in __submit_discard_cmd()
1396 static void __insert_discard_cmd(struct f2fs_sb_info *sbi, in __insert_discard_cmd()
1434 static void __punch_discard_cmd(struct f2fs_sb_info *sbi, in __punch_discard_cmd()
1470 static void __update_discard_tree_range(struct f2fs_sb_info *sbi, in __update_discard_tree_range()
1557 static void __queue_zone_reset_cmd(struct f2fs_sb_info *sbi, in __queue_zone_reset_cmd()
1569 static void __queue_discard_cmd(struct f2fs_sb_info *sbi, in __queue_discard_cmd()
1589 static void __issue_discard_cmd_orderly(struct f2fs_sb_info *sbi, in __issue_discard_cmd_orderly()
1644 static int __issue_discard_cmd(struct f2fs_sb_info *sbi, in __issue_discard_cmd()
1717 static bool __drop_discard_cmd(struct f2fs_sb_info *sbi) in __drop_discard_cmd()
1739 void f2fs_drop_discard_cmd(struct f2fs_sb_info *sbi) in f2fs_drop_discard_cmd()
1744 static unsigned int __wait_one_discard_bio(struct f2fs_sb_info *sbi, in __wait_one_discard_bio()
1764 static unsigned int __wait_discard_cmd_range(struct f2fs_sb_info *sbi, in __wait_discard_cmd_range()
1805 static unsigned int __wait_all_discard_cmd(struct f2fs_sb_info *sbi, in __wait_all_discard_cmd()
1824 static void f2fs_wait_discard_bio(struct f2fs_sb_info *sbi, block_t blkaddr) in f2fs_wait_discard_bio()
1868 void f2fs_stop_discard_thread(struct f2fs_sb_info *sbi) in f2fs_stop_discard_thread()
1888 bool f2fs_issue_discard_timeout(struct f2fs_sb_info *sbi) in f2fs_issue_discard_timeout()
1911 struct f2fs_sb_info *sbi = data; in issue_discard_thread() local
1973 static int __f2fs_issue_discard_zone(struct f2fs_sb_info *sbi, in __f2fs_issue_discard_zone()
2026 static int __issue_discard_async(struct f2fs_sb_info *sbi, in __issue_discard_async()
2037 static int f2fs_issue_discard(struct f2fs_sb_info *sbi, in f2fs_issue_discard()
2078 static bool add_discard_addrs(struct f2fs_sb_info *sbi, struct cp_control *cpc, in add_discard_addrs()
2148 void f2fs_release_discard_addrs(struct f2fs_sb_info *sbi) in f2fs_release_discard_addrs()
2161 static void set_prefree_as_free_segments(struct f2fs_sb_info *sbi) in set_prefree_as_free_segments()
2172 void f2fs_clear_prefree_segments(struct f2fs_sb_info *sbi, in f2fs_clear_prefree_segments()
2282 int f2fs_start_discard_thread(struct f2fs_sb_info *sbi) in f2fs_start_discard_thread()
2307 static int create_discard_cmd_control(struct f2fs_sb_info *sbi) in create_discard_cmd_control()
2362 static void destroy_discard_cmd_control(struct f2fs_sb_info *sbi) in destroy_discard_cmd_control()
2381 static bool __mark_sit_entry_dirty(struct f2fs_sb_info *sbi, unsigned int segno) in __mark_sit_entry_dirty()
2393 static void __set_sit_entry_type(struct f2fs_sb_info *sbi, int type, in __set_sit_entry_type()
2403 static inline unsigned long long get_segment_mtime(struct f2fs_sb_info *sbi, in get_segment_mtime()
2413 static void update_segment_mtime(struct f2fs_sb_info *sbi, block_t blkaddr, in update_segment_mtime()
2440 static int update_sit_entry_for_release(struct f2fs_sb_info *sbi, struct seg_entry *se, in update_sit_entry_for_release()
2493 static int update_sit_entry_for_alloc(struct f2fs_sb_info *sbi, struct seg_entry *se, in update_sit_entry_for_alloc()
2542 static void update_sit_entry(struct f2fs_sb_info *sbi, block_t blkaddr, int del) in update_sit_entry()
2577 void f2fs_invalidate_blocks(struct f2fs_sb_info *sbi, block_t addr, in f2fs_invalidate_blocks()
2618 bool f2fs_is_checkpointed_data(struct f2fs_sb_info *sbi, block_t blkaddr) in f2fs_is_checkpointed_data()
2642 static unsigned short f2fs_curseg_valid_blocks(struct f2fs_sb_info *sbi, int type) in f2fs_curseg_valid_blocks()
2654 int f2fs_npages_for_summary_flush(struct f2fs_sb_info *sbi, bool for_ra) in f2fs_npages_for_summary_flush()
2680 struct page *f2fs_get_sum_page(struct f2fs_sb_info *sbi, unsigned int segno) in f2fs_get_sum_page()
2687 void f2fs_update_meta_page(struct f2fs_sb_info *sbi, in f2fs_update_meta_page()
2697 static void write_sum_page(struct f2fs_sb_info *sbi, in write_sum_page()
2703 static void write_current_sum_page(struct f2fs_sb_info *sbi, in write_current_sum_page()
2729 static int is_next_segment_free(struct f2fs_sb_info *sbi, in is_next_segment_free()
2744 static int get_new_segment(struct f2fs_sb_info *sbi, in get_new_segment()
2857 static void reset_curseg(struct f2fs_sb_info *sbi, int type, int modified) in reset_curseg()
2885 static unsigned int __get_next_segno(struct f2fs_sb_info *sbi, int type) in __get_next_segno()
2936 static int new_curseg(struct f2fs_sb_info *sbi, int type, bool new_sec) in new_curseg()
2963 static int __next_free_blkoff(struct f2fs_sb_info *sbi, in __next_free_blkoff()
2979 static int f2fs_find_next_ssr_block(struct f2fs_sb_info *sbi, in f2fs_find_next_ssr_block()
2985 bool f2fs_segment_has_free_slot(struct f2fs_sb_info *sbi, int segno) in f2fs_segment_has_free_slot()
2994 static int change_curseg(struct f2fs_sb_info *sbi, int type) in change_curseg()
3031 static int get_atssr_segment(struct f2fs_sb_info *sbi, int type, in get_atssr_segment()
3054 static int __f2fs_init_atgc_curseg(struct f2fs_sb_info *sbi, bool force) in __f2fs_init_atgc_curseg()
3077 int f2fs_init_inmem_curseg(struct f2fs_sb_info *sbi) in f2fs_init_inmem_curseg()
3082 int f2fs_reinit_atgc_curseg(struct f2fs_sb_info *sbi) in f2fs_reinit_atgc_curseg()
3102 static void __f2fs_save_inmem_curseg(struct f2fs_sb_info *sbi, int type) in __f2fs_save_inmem_curseg()
3122 void f2fs_save_inmem_curseg(struct f2fs_sb_info *sbi) in f2fs_save_inmem_curseg()
3130 static void __f2fs_restore_inmem_curseg(struct f2fs_sb_info *sbi, int type) in __f2fs_restore_inmem_curseg()
3147 void f2fs_restore_inmem_curseg(struct f2fs_sb_info *sbi) in f2fs_restore_inmem_curseg()
3155 static int get_ssr_segment(struct f2fs_sb_info *sbi, int type, in get_ssr_segment()
3213 static bool need_new_seg(struct f2fs_sb_info *sbi, int type) in need_new_seg()
3228 int f2fs_allocate_segment_for_resize(struct f2fs_sb_info *sbi, int type, in f2fs_allocate_segment_for_resize()
3263 static int __allocate_new_segment(struct f2fs_sb_info *sbi, int type, in __allocate_new_segment()
3289 int f2fs_allocate_new_section(struct f2fs_sb_info *sbi, int type, bool force) in f2fs_allocate_new_section()
3302 int f2fs_allocate_pinning_section(struct f2fs_sb_info *sbi) in f2fs_allocate_pinning_section()
3326 int f2fs_allocate_new_segments(struct f2fs_sb_info *sbi) in f2fs_allocate_new_segments()
3341 bool f2fs_exist_trim_candidates(struct f2fs_sb_info *sbi, in f2fs_exist_trim_candidates()
3360 static unsigned int __issue_discard_cmd_range(struct f2fs_sb_info *sbi, in __issue_discard_cmd_range()
3428 int f2fs_trim_fs(struct f2fs_sb_info *sbi, struct fstrim_range *range) in f2fs_trim_fs()
3499 int f2fs_rw_hint_to_seg_type(struct f2fs_sb_info *sbi, enum rw_hint hint) in f2fs_rw_hint_to_seg_type()
3543 enum rw_hint f2fs_io_type_to_rw_hint(struct f2fs_sb_info *sbi, in f2fs_io_type_to_rw_hint()
3603 struct f2fs_sb_info *sbi = F2FS_I_SB(inode); in __get_age_segment_type() local
3659 enum temp_type f2fs_get_segment_temp(struct f2fs_sb_info *sbi, in f2fs_get_segment_temp()
3708 static void f2fs_randomize_chunk(struct f2fs_sb_info *sbi, in f2fs_randomize_chunk()
3721 int f2fs_allocate_data_block(struct f2fs_sb_info *sbi, struct page *page, in f2fs_allocate_data_block()
3854 void f2fs_update_device_state(struct f2fs_sb_info *sbi, nid_t ino, in f2fs_update_device_state()
3935 void f2fs_do_write_meta_page(struct f2fs_sb_info *sbi, struct folio *folio, in f2fs_do_write_meta_page()
3974 struct f2fs_sb_info *sbi = fio->sbi; in f2fs_outplace_write_data() local
3990 struct f2fs_sb_info *sbi = fio->sbi; in f2fs_inplace_write_data() local
4041 static inline int __f2fs_get_curseg(struct f2fs_sb_info *sbi, in __f2fs_get_curseg()
4053 void f2fs_do_replace_block(struct f2fs_sb_info *sbi, struct f2fs_summary *sum, in f2fs_do_replace_block()
4143 void f2fs_replace_block(struct f2fs_sb_info *sbi, struct dnode_of_data *dn, in f2fs_replace_block()
4162 struct f2fs_sb_info *sbi = F2FS_P_SB(page); in f2fs_wait_on_page_writeback() local
4180 struct f2fs_sb_info *sbi = F2FS_I_SB(inode); in f2fs_wait_on_block_writeback() local
4199 struct f2fs_sb_info *sbi = F2FS_I_SB(inode); in f2fs_wait_on_block_writeback_range() local
4211 static int read_compacted_summaries(struct f2fs_sb_info *sbi) in read_compacted_summaries()
4276 static int read_normal_summaries(struct f2fs_sb_info *sbi, int type) in read_normal_summaries()
4350 static int restore_curseg_summaries(struct f2fs_sb_info *sbi) in restore_curseg_summaries()
4393 static void write_compacted_summaries(struct f2fs_sb_info *sbi, block_t blkaddr) in write_compacted_summaries()
4445 static void write_normal_summaries(struct f2fs_sb_info *sbi, in write_normal_summaries()
4459 void f2fs_write_data_summaries(struct f2fs_sb_info *sbi, block_t start_blk) in f2fs_write_data_summaries()
4467 void f2fs_write_node_summaries(struct f2fs_sb_info *sbi, block_t start_blk) in f2fs_write_node_summaries()
4494 static struct page *get_current_sit_page(struct f2fs_sb_info *sbi, in get_current_sit_page()
4500 static struct page *get_next_sit_page(struct f2fs_sb_info *sbi, in get_next_sit_page()
4573 static void add_sits_in_set(struct f2fs_sb_info *sbi) in add_sits_in_set()
4584 static void remove_sits_in_journal(struct f2fs_sb_info *sbi) in remove_sits_in_journal()
4609 void f2fs_flush_sit_entries(struct f2fs_sb_info *sbi, struct cp_control *cpc) in f2fs_flush_sit_entries()
4729 static int build_sit_info(struct f2fs_sb_info *sbi) in build_sit_info()
4835 static int build_free_segmap(struct f2fs_sb_info *sbi) in build_free_segmap()
4869 static int build_curseg(struct f2fs_sb_info *sbi) in build_curseg()
4897 static int build_sit_entries(struct f2fs_sb_info *sbi) in build_sit_entries()
5042 static void init_free_segmap(struct f2fs_sb_info *sbi) in init_free_segmap()
5067 static void init_dirty_segmap(struct f2fs_sb_info *sbi) in init_dirty_segmap()
5110 static int init_victim_secmap(struct f2fs_sb_info *sbi) in init_victim_secmap()
5128 static int build_dirty_segmap(struct f2fs_sb_info *sbi) in build_dirty_segmap()
5163 static int sanity_check_curseg(struct f2fs_sb_info *sbi) in sanity_check_curseg()
5212 static int check_zone_write_pointer(struct f2fs_sb_info *sbi, in check_zone_write_pointer()
5292 static struct f2fs_dev_info *get_target_zoned_dev(struct f2fs_sb_info *sbi, in get_target_zoned_dev()
5315 static int do_fix_curseg_write_pointer(struct f2fs_sb_info *sbi, int type) in do_fix_curseg_write_pointer()
5420 static int fix_curseg_write_pointer(struct f2fs_sb_info *sbi) in fix_curseg_write_pointer()
5434 struct f2fs_sb_info *sbi; member
5448 static int check_write_pointer(struct f2fs_sb_info *sbi) in check_write_pointer()
5468 int f2fs_check_and_fix_write_pointer(struct f2fs_sb_info *sbi) in f2fs_check_and_fix_write_pointer()
5492 struct f2fs_sb_info *sbi, unsigned int segno) in f2fs_usable_zone_blks_in_seg()
5519 int f2fs_check_and_fix_write_pointer(struct f2fs_sb_info *sbi) in f2fs_check_and_fix_write_pointer()
5524 static inline unsigned int f2fs_usable_zone_blks_in_seg(struct f2fs_sb_info *sbi, in f2fs_usable_zone_blks_in_seg()
5531 unsigned int f2fs_usable_blks_in_seg(struct f2fs_sb_info *sbi, in f2fs_usable_blks_in_seg()
5540 unsigned int f2fs_usable_segs_in_sec(struct f2fs_sb_info *sbi) in f2fs_usable_segs_in_sec()
5548 unsigned long long f2fs_get_section_mtime(struct f2fs_sb_info *sbi, in f2fs_get_section_mtime()
5586 static void init_min_max_mtime(struct f2fs_sb_info *sbi) in init_min_max_mtime()
5608 int f2fs_build_segment_manager(struct f2fs_sb_info *sbi) in f2fs_build_segment_manager()
5681 static void discard_dirty_segmap(struct f2fs_sb_info *sbi, in discard_dirty_segmap()
5692 static void destroy_victim_secmap(struct f2fs_sb_info *sbi) in destroy_victim_secmap()
5700 static void destroy_dirty_segmap(struct f2fs_sb_info *sbi) in destroy_dirty_segmap()
5723 static void destroy_curseg(struct f2fs_sb_info *sbi) in destroy_curseg()
5738 static void destroy_free_segmap(struct f2fs_sb_info *sbi) in destroy_free_segmap()
5750 static void destroy_sit_info(struct f2fs_sb_info *sbi) in destroy_sit_info()
5774 void f2fs_destroy_segment_manager(struct f2fs_sb_info *sbi) in f2fs_destroy_segment_manager()