aboutsummaryrefslogtreecommitdiffstats
path: root/fs/f2fs/debug.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2019-07-12 20:28:24 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2019-07-12 20:28:24 -0400
commita641a88e5d6864f20b2608cb01165c756794e645 (patch)
tree5acf37ca592a87d705169174b51feb47bd253fa9 /fs/f2fs/debug.c
parent4ce9d181ebe53abbca5f450b8a2984b8c3a38f26 (diff)
parent2d008835ec2fcf6eef3285e41e62a5eabd1fe76b (diff)
Merge tag 'f2fs-for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs
Pull f2fs updates from Jaegeuk Kim: "In this round, we've introduced native swap file support which can exploit DIO, enhanced existing checkpoint=disable feature with additional mount option to tune the triggering condition, and allowed user to preallocate physical blocks in a pinned file which will be useful to avoid f2fs fragmentation in append-only workloads. In addition, we've fixed subtle quota corruption issue. Enhancements: - add swap file support which uses DIO - allocate blocks for pinned file - allow SSR and mount option to enhance checkpoint=disable - enhance IPU IOs - add more sanity checks such as memory boundary access Bug fixes: - quota corruption in very corner case of error-injected SPO case - fix root_reserved on remount and some wrong counts - add missing fsck flag Some patches were also introduced to clean up ambiguous i_flags and debugging messages codes" * tag 'f2fs-for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (33 commits) f2fs: improve print log in f2fs_sanity_check_ckpt() f2fs: avoid out-of-range memory access f2fs: fix to avoid long latency during umount f2fs: allow all the users to pin a file f2fs: support swap file w/ DIO f2fs: allocate blocks for pinned file f2fs: fix is_idle() check for discard type f2fs: add a rw_sem to cover quota flag changes f2fs: set SBI_NEED_FSCK for xattr corruption case f2fs: use generic EFSBADCRC/EFSCORRUPTED f2fs: Use DIV_ROUND_UP() instead of open-coding f2fs: print kernel message if filesystem is inconsistent f2fs: introduce f2fs_<level> macros to wrap f2fs_printk() f2fs: avoid get_valid_blocks() for cleanup f2fs: ioctl for removing a range from F2FS f2fs: only set project inherit bit for directory f2fs: separate f2fs i_flags from fs_flags and ext4 i_flags f2fs: replace ktype default_attrs with default_groups f2fs: Add option to limit required GC for checkpoint=disable f2fs: Fix accounting for unusable blocks ...
Diffstat (limited to 'fs/f2fs/debug.c')
-rw-r--r--fs/f2fs/debug.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/f2fs/debug.c b/fs/f2fs/debug.c
index 99e9a5c37b71..7706049d23bf 100644
--- a/fs/f2fs/debug.c
+++ b/fs/f2fs/debug.c
@@ -27,8 +27,15 @@ static DEFINE_MUTEX(f2fs_stat_mutex);
27static void update_general_status(struct f2fs_sb_info *sbi) 27static void update_general_status(struct f2fs_sb_info *sbi)
28{ 28{
29 struct f2fs_stat_info *si = F2FS_STAT(sbi); 29 struct f2fs_stat_info *si = F2FS_STAT(sbi);
30 struct f2fs_super_block *raw_super = F2FS_RAW_SUPER(sbi);
30 int i; 31 int i;
31 32
33 /* these will be changed if online resize is done */
34 si->main_area_segs = le32_to_cpu(raw_super->segment_count_main);
35 si->main_area_sections = le32_to_cpu(raw_super->section_count);
36 si->main_area_zones = si->main_area_sections /
37 le32_to_cpu(raw_super->secs_per_zone);
38
32 /* validation check of the segment numbers */ 39 /* validation check of the segment numbers */
33 si->hit_largest = atomic64_read(&sbi->read_hit_largest); 40 si->hit_largest = atomic64_read(&sbi->read_hit_largest);
34 si->hit_cached = atomic64_read(&sbi->read_hit_cached); 41 si->hit_cached = atomic64_read(&sbi->read_hit_cached);