Lines Matching defs:f2fs_sb_info
1569 struct f2fs_sb_info { struct
1570 struct super_block *sb; /* pointer to VFS super block */
1571 struct proc_dir_entry *s_proc; /* proc entry */
1572 struct f2fs_super_block *raw_super; /* raw super block pointer */
1573 struct f2fs_rwsem sb_lock; /* lock for raw super block */
1574 int valid_super_block; /* valid super block no */
1575 unsigned long s_flag; /* flags for sbi */
1576 struct mutex writepages; /* mutex for writepages() */
1579 unsigned int blocks_per_blkz; /* F2FS blocks per zone */
1580 unsigned int log_blocks_per_blkz; /* log2 F2FS blocks per zone */
1584 struct f2fs_nm_info *nm_info; /* node manager */
1585 struct inode *node_inode; /* cache node blocks */
1588 struct f2fs_sm_info *sm_info; /* segment manager */
1591 struct f2fs_bio_info *write_io[NR_PAGE_TYPE]; /* for write bios */
1593 struct f2fs_rwsem io_order_lock;
1594 mempool_t *write_io_dummy; /* Dummy pages */
1597 struct f2fs_checkpoint *ckpt; /* raw checkpoint pointer */
1598 int cur_cp_pack; /* remain current cp pack */
1599 spinlock_t cp_lock; /* for flag in ckpt */
1600 struct inode *meta_inode; /* cache meta blocks */
1601 struct f2fs_rwsem cp_global_sem; /* checkpoint procedure lock */
1602 struct f2fs_rwsem cp_rwsem; /* blocking FS operations */
1603 struct f2fs_rwsem node_write; /* locking node writes */
1604 struct f2fs_rwsem node_change; /* locking node change */
1605 wait_queue_head_t cp_wait;
1606 unsigned long last_time[MAX_TIME]; /* to store time in jiffies */
1607 long interval_time[MAX_TIME]; /* to store thresholds */
1608 struct ckpt_req_control cprc_info; /* for checkpoint request control */
1610 struct inode_management im[MAX_INO_ENTRY]; /* manage inode cache */
1612 spinlock_t fsync_node_lock; /* for node entry lock */
1613 struct list_head fsync_node_list; /* node list head */
1614 unsigned int fsync_seg_id; /* sequence id */
1615 unsigned int fsync_node_num; /* number of node entries */
1618 unsigned int max_orphans; /* max orphan inodes */
1621 struct list_head inode_list[NR_INODE_TYPE]; /* dirty inode list */
1622 spinlock_t inode_lock[NR_INODE_TYPE]; /* for dirty inode list lock */
1623 struct mutex flush_lock; /* for flush exclusion */
1626 struct extent_tree_info extent_tree[NR_EXTENT_CACHES];
1627 atomic64_t allocated_data_blocks; /* for block age extent_cache */
1630 unsigned int hot_data_age_threshold;
1631 unsigned int warm_data_age_threshold;
1632 unsigned int last_age_weight;
1635 unsigned int log_sectors_per_block; /* log2 sectors per block */
1636 unsigned int log_blocksize; /* log2 block size */
1637 unsigned int blocksize; /* block size */
1638 unsigned int root_ino_num; /* root inode number*/
1639 unsigned int node_ino_num; /* node inode number*/
1640 unsigned int meta_ino_num; /* meta inode number*/
1641 unsigned int log_blocks_per_seg; /* log2 blocks per segment */
1642 unsigned int blocks_per_seg; /* blocks per segment */
1643 unsigned int segs_per_sec; /* segments per section */
1644 unsigned int secs_per_zone; /* sections per zone */
1645 unsigned int total_sections; /* total section count */
1646 unsigned int total_node_count; /* total node block count */
1647 unsigned int total_valid_node_count; /* valid node block count */
1648 int dir_level; /* directory level */
1649 int readdir_ra; /* readahead inode in readdir */
1650 u64 max_io_bytes; /* max io bytes to merge IOs */
1652 block_t user_block_count; /* # of user blocks */
1653 block_t total_valid_block_count; /* # of valid blocks */
1654 block_t discard_blks; /* discard command candidats */
1655 block_t last_valid_block_count; /* for recovery */
1656 block_t reserved_blocks; /* configurable reserved blocks */
1657 block_t current_reserved_blocks; /* current reserved blocks */
1660 block_t unusable_block_count; /* # of blocks saved by last cp */
1662 unsigned int nquota_files; /* # of quota sysfile */
1663 struct f2fs_rwsem quota_sem; /* blocking cp for flags */
1666 atomic_t nr_pages[NR_COUNT_TYPE];
1668 struct percpu_counter alloc_valid_block_count;
1671 atomic_t wb_sync_req[META]; /* count # of WB_SYNC threads */
1674 struct percpu_counter total_valid_inode_count;
1676 struct f2fs_mount_info mount_opt; /* mount options */
1679 struct f2fs_rwsem gc_lock; /*
1683 struct f2fs_gc_kthread *gc_thread; /* GC thread */
1684 struct atgc_management am; /* atgc management */
1685 unsigned int cur_victim_sec; /* current victim section num */
1686 unsigned int gc_mode; /* current GC state */
1687 unsigned int next_victim_seg[2]; /* next segment in victim section */
1690 unsigned int atomic_files; /* # of opened atomic file */
1691 unsigned long long skipped_atomic_files[2]; /* FG_GC and BG_GC */
1692 unsigned long long skipped_gc_rwsem; /* FG_GC only */
1695 u64 gc_pin_file_threshold;
1696 struct f2fs_rwsem pin_sem;
1699 unsigned int max_victim_search;
1701 unsigned int migration_granularity;
1703 atomic_t no_cp_fsync_pages;
1710 struct f2fs_stat_info *stat_info; /* FS status information */
1711 atomic_t meta_count[META_MAX]; /* # of meta blocks */
1712 unsigned int segment_count[2]; /* # of allocated segments */
1713 unsigned int block_count[2]; /* # of allocated blocks */
1714 atomic_t inplace_count; /* # of inplace update */
1716 atomic64_t total_hit_ext[NR_EXTENT_CACHES];
1718 atomic64_t read_hit_rbtree[NR_EXTENT_CACHES];
1720 atomic64_t read_hit_cached[NR_EXTENT_CACHES];
1722 atomic64_t read_hit_largest;
1723 atomic_t inline_xattr; /* # of inline_xattr inodes */
1724 atomic_t inline_inode; /* # of inline_data inodes */
1725 atomic_t inline_dir; /* # of inline_dentry inodes */
1726 atomic_t compr_inode; /* # of compressed inodes */
1727 atomic64_t compr_blocks; /* # of compressed blocks */
1728 atomic_t vw_cnt; /* # of volatile writes */
1729 atomic_t max_aw_cnt; /* max # of atomic writes */
1730 atomic_t max_vw_cnt; /* max # of volatile writes */
1731 unsigned int io_skip_bggc; /* skip background gc for in-flight IO */
1732 unsigned int other_skip_bggc; /* skip background gc for other reasons */
1733 unsigned int ndirty_inode[NR_INODE_TYPE]; /* # of dirty inodes */
1735 spinlock_t stat_lock; /* lock for stat operations */
1738 spinlock_t iostat_lock;
1739 unsigned long long rw_iostat[NR_IO_TYPE];
1740 unsigned long long prev_rw_iostat[NR_IO_TYPE];
1741 bool iostat_enable;
1742 unsigned long iostat_next_period;
1743 unsigned int iostat_period_ms;
1746 unsigned int data_io_flag;
1747 unsigned int node_io_flag;
1750 struct kobject s_kobj; /* /sys/fs/f2fs/<devname> */
1751 struct completion s_kobj_unregister;
1753 struct kobject s_stat_kobj; /* /sys/fs/f2fs/<devname>/stat */
1754 struct completion s_stat_kobj_unregister;
1756 struct kobject s_feature_list_kobj; /* /sys/fs/f2fs/<devname>/feature_list */
1757 struct completion s_feature_list_kobj_unregister;
1760 struct list_head s_list;
1761 int s_ndevs; /* number of devices */
1762 struct f2fs_dev_info *devs; /* for device list */
1763 unsigned int dirty_device; /* for checkpoint data flush */
1764 spinlock_t dev_lock; /* protect dirty_device */
1765 struct mutex umount_mutex;
1766 unsigned int shrinker_run_no;
1769 u64 sectors_written_start;
1770 u64 kbytes_written;
1773 struct crypto_shash *s_chksum_driver;
1776 __u32 s_chksum_seed;
1778 struct workqueue_struct *post_read_wq; /* post read workqueue */
1780 struct kmem_cache *inline_xattr_slab; /* inline xattr entry */
1781 unsigned int inline_xattr_slab_size; /* default inline xattr slab size */
1784 unsigned int gc_segment_mode; /* GC state for reclaimed segments */
1785 unsigned int gc_reclaimed_segs[MAX_GC_MODE]; /* Reclaimed segs for each mode */
1788 struct kmem_cache *page_array_slab; /* page array entry */
1789 unsigned int page_array_slab_size; /* default page array slab size */
1792 u64 compr_written_block;
1793 u64 compr_saved_block;
1817 static inline bool time_to_inject(struct f2fs_sb_info *sbi, int type) in time_to_inject() argument