Lines Matching defs:f2fs_sb_info
1417 struct f2fs_sb_info { struct
1418 struct super_block *sb; /* pointer to VFS super block */
1419 struct proc_dir_entry *s_proc; /* proc entry */
1420 struct f2fs_super_block *raw_super; /* raw super block pointer */
1421 struct rw_semaphore sb_lock; /* lock for raw super block */
1422 int valid_super_block; /* valid super block no */
1423 unsigned long s_flag; /* flags for sbi */
1424 struct mutex writepages; /* mutex for writepages() */
1427 unsigned int blocks_per_blkz; /* F2FS blocks per zone */
1428 unsigned int log_blocks_per_blkz; /* log2 F2FS blocks per zone */
1432 struct f2fs_nm_info *nm_info; /* node manager */
1433 struct inode *node_inode; /* cache node blocks */
1436 struct f2fs_sm_info *sm_info; /* segment manager */
1439 struct f2fs_bio_info *write_io[NR_PAGE_TYPE]; /* for write bios */
1441 struct rw_semaphore io_order_lock;
1442 mempool_t *write_io_dummy; /* Dummy pages */
1445 struct f2fs_checkpoint *ckpt; /* raw checkpoint pointer */
1446 int cur_cp_pack; /* remain current cp pack */
1447 spinlock_t cp_lock; /* for flag in ckpt */
1448 struct inode *meta_inode; /* cache meta blocks */
1449 struct mutex cp_mutex; /* checkpoint procedure lock */
1450 struct rw_semaphore cp_rwsem; /* blocking FS operations */
1451 struct rw_semaphore node_write; /* locking node writes */
1452 struct rw_semaphore node_change; /* locking node change */
1453 wait_queue_head_t cp_wait;
1454 unsigned long last_time[MAX_TIME]; /* to store time in jiffies */
1455 long interval_time[MAX_TIME]; /* to store thresholds */
1457 struct inode_management im[MAX_INO_ENTRY]; /* manage inode cache */
1459 spinlock_t fsync_node_lock; /* for node entry lock */
1460 struct list_head fsync_node_list; /* node list head */
1461 unsigned int fsync_seg_id; /* sequence id */
1462 unsigned int fsync_node_num; /* number of node entries */
1465 unsigned int max_orphans; /* max orphan inodes */
1468 struct list_head inode_list[NR_INODE_TYPE]; /* dirty inode list */
1469 spinlock_t inode_lock[NR_INODE_TYPE]; /* for dirty inode list lock */
1470 struct mutex flush_lock; /* for flush exclusion */
1473 struct radix_tree_root extent_tree_root;/* cache extent cache entries */
1474 struct mutex extent_tree_lock; /* locking extent radix tree */
1475 struct list_head extent_list; /* lru list for shrinker */
1476 spinlock_t extent_lock; /* locking extent lru list */
1477 atomic_t total_ext_tree; /* extent tree count */
1478 struct list_head zombie_list; /* extent zombie tree list */
1479 atomic_t total_zombie_tree; /* extent zombie tree count */
1480 atomic_t total_ext_node; /* extent info count */
1483 unsigned int log_sectors_per_block; /* log2 sectors per block */
1484 unsigned int log_blocksize; /* log2 block size */
1485 unsigned int blocksize; /* block size */
1486 unsigned int root_ino_num; /* root inode number*/
1487 unsigned int node_ino_num; /* node inode number*/
1488 unsigned int meta_ino_num; /* meta inode number*/
1489 unsigned int log_blocks_per_seg; /* log2 blocks per segment */
1490 unsigned int blocks_per_seg; /* blocks per segment */
1491 unsigned int segs_per_sec; /* segments per section */
1492 unsigned int secs_per_zone; /* sections per zone */
1493 unsigned int total_sections; /* total section count */
1494 unsigned int total_node_count; /* total node block count */
1495 unsigned int total_valid_node_count; /* valid node block count */
1496 loff_t max_file_blocks; /* max block index of file */
1497 int dir_level; /* directory level */
1498 int readdir_ra; /* readahead inode in readdir */
1500 block_t user_block_count; /* # of user blocks */
1501 block_t total_valid_block_count; /* # of valid blocks */
1502 block_t discard_blks; /* discard command candidats */
1503 block_t last_valid_block_count; /* for recovery */
1504 block_t reserved_blocks; /* configurable reserved blocks */
1505 block_t current_reserved_blocks; /* current reserved blocks */
1508 block_t unusable_block_count; /* # of blocks saved by last cp */
1510 unsigned int nquota_files; /* # of quota sysfile */
1511 struct rw_semaphore quota_sem; /* blocking cp for flags */
1514 atomic_t nr_pages[NR_COUNT_TYPE];
1516 struct percpu_counter alloc_valid_block_count;
1519 atomic_t wb_sync_req[META]; /* count # of WB_SYNC threads */
1522 struct percpu_counter total_valid_inode_count;
1524 struct f2fs_mount_info mount_opt; /* mount options */
1527 struct rw_semaphore gc_lock; /*
1531 struct f2fs_gc_kthread *gc_thread; /* GC thread */
1532 struct atgc_management am; /* atgc management */
1533 unsigned int cur_victim_sec; /* current victim section num */
1534 unsigned int gc_mode; /* current GC state */
1535 unsigned int next_victim_seg[2]; /* next segment in victim section */
1538 unsigned int atomic_files; /* # of opened atomic file */
1539 unsigned long long skipped_atomic_files[2]; /* FG_GC and BG_GC */
1540 unsigned long long skipped_gc_rwsem; /* FG_GC only */
1543 u64 gc_pin_file_threshold;
1544 struct rw_semaphore pin_sem;
1547 unsigned int max_victim_search;
1549 unsigned int migration_granularity;
1556 struct f2fs_stat_info *stat_info; /* FS status information */
1557 atomic_t meta_count[META_MAX]; /* # of meta blocks */
1558 unsigned int segment_count[2]; /* # of allocated segments */
1559 unsigned int block_count[2]; /* # of allocated blocks */
1560 atomic_t inplace_count; /* # of inplace update */
1561 atomic64_t total_hit_ext; /* # of lookup extent cache */
1562 atomic64_t read_hit_rbtree; /* # of hit rbtree extent node */
1563 atomic64_t read_hit_largest; /* # of hit largest extent node */
1564 atomic64_t read_hit_cached; /* # of hit cached extent node */
1565 atomic_t inline_xattr; /* # of inline_xattr inodes */
1566 atomic_t inline_inode; /* # of inline_data inodes */
1567 atomic_t inline_dir; /* # of inline_dentry inodes */
1568 atomic_t compr_inode; /* # of compressed inodes */
1569 atomic64_t compr_blocks; /* # of compressed blocks */
1570 atomic_t vw_cnt; /* # of volatile writes */
1571 atomic_t max_aw_cnt; /* max # of atomic writes */
1572 atomic_t max_vw_cnt; /* max # of volatile writes */
1573 unsigned int io_skip_bggc; /* skip background gc for in-flight IO */
1574 unsigned int other_skip_bggc; /* skip background gc for other reasons */
1575 unsigned int ndirty_inode[NR_INODE_TYPE]; /* # of dirty inodes */
1577 spinlock_t stat_lock; /* lock for stat operations */
1580 spinlock_t iostat_lock;
1581 unsigned long long rw_iostat[NR_IO_TYPE];
1582 unsigned long long prev_rw_iostat[NR_IO_TYPE];
1583 bool iostat_enable;
1584 unsigned long iostat_next_period;
1585 unsigned int iostat_period_ms;
1588 unsigned int data_io_flag;
1589 unsigned int node_io_flag;
1592 struct kobject s_kobj;
1593 struct completion s_kobj_unregister;
1596 struct list_head s_list;
1597 int s_ndevs; /* number of devices */
1598 struct f2fs_dev_info *devs; /* for device list */
1599 unsigned int dirty_device; /* for checkpoint data flush */
1600 spinlock_t dev_lock; /* protect dirty_device */
1601 struct mutex umount_mutex;
1602 unsigned int shrinker_run_no;
1605 u64 sectors_written_start;
1606 u64 kbytes_written;
1609 struct crypto_shash *s_chksum_driver;
1612 __u32 s_chksum_seed;
1614 struct workqueue_struct *post_read_wq; /* post read workqueue */
1638 static inline bool time_to_inject(struct f2fs_sb_info *sbi, int type) in time_to_inject() argument