mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 14:44:10 +08:00
f2fs: fix typo
Fix typo and some grammatical errors. The words "filesystem" and "readahead" are being used without the space treewide. Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
63d871cb0b
commit
e1c4204520
@ -23,7 +23,7 @@ config F2FS_STAT_FS
|
|||||||
mounted as f2fs. Each file shows the whole f2fs information.
|
mounted as f2fs. Each file shows the whole f2fs information.
|
||||||
|
|
||||||
/sys/kernel/debug/f2fs/status includes:
|
/sys/kernel/debug/f2fs/status includes:
|
||||||
- major file system information managed by f2fs currently
|
- major filesystem information managed by f2fs currently
|
||||||
- average SIT information about whole segments
|
- average SIT information about whole segments
|
||||||
- current memory footprint consumed by f2fs.
|
- current memory footprint consumed by f2fs.
|
||||||
|
|
||||||
@ -68,6 +68,6 @@ config F2FS_CHECK_FS
|
|||||||
bool "F2FS consistency checking feature"
|
bool "F2FS consistency checking feature"
|
||||||
depends on F2FS_FS
|
depends on F2FS_FS
|
||||||
help
|
help
|
||||||
Enables BUG_ONs which check the file system consistency in runtime.
|
Enables BUG_ONs which check the filesystem consistency in runtime.
|
||||||
|
|
||||||
If you want to improve the performance, say N.
|
If you want to improve the performance, say N.
|
||||||
|
@ -758,7 +758,7 @@ retry_flush_dents:
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* POR: we should ensure that there is no dirty node pages
|
* POR: we should ensure that there are no dirty node pages
|
||||||
* until finishing nat/sit flush.
|
* until finishing nat/sit flush.
|
||||||
*/
|
*/
|
||||||
retry_flush_nodes:
|
retry_flush_nodes:
|
||||||
@ -942,7 +942,7 @@ static void do_checkpoint(struct f2fs_sb_info *sbi, bool is_umount)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* We guarantee that this checkpoint procedure should not fail.
|
* We guarantee that this checkpoint procedure will not fail.
|
||||||
*/
|
*/
|
||||||
void write_checkpoint(struct f2fs_sb_info *sbi, bool is_umount)
|
void write_checkpoint(struct f2fs_sb_info *sbi, bool is_umount)
|
||||||
{
|
{
|
||||||
|
@ -691,7 +691,7 @@ get_next:
|
|||||||
allocated = true;
|
allocated = true;
|
||||||
blkaddr = dn.data_blkaddr;
|
blkaddr = dn.data_blkaddr;
|
||||||
}
|
}
|
||||||
/* Give more consecutive addresses for the read ahead */
|
/* Give more consecutive addresses for the readahead */
|
||||||
if (blkaddr == (bh_result->b_blocknr + ofs)) {
|
if (blkaddr == (bh_result->b_blocknr + ofs)) {
|
||||||
ofs++;
|
ofs++;
|
||||||
dn.ofs_in_node++;
|
dn.ofs_in_node++;
|
||||||
@ -739,7 +739,7 @@ static int f2fs_read_data_page(struct file *file, struct page *page)
|
|||||||
|
|
||||||
trace_f2fs_readpage(page, DATA);
|
trace_f2fs_readpage(page, DATA);
|
||||||
|
|
||||||
/* If the file has inline data, try to read it directlly */
|
/* If the file has inline data, try to read it directly */
|
||||||
if (f2fs_has_inline_data(inode))
|
if (f2fs_has_inline_data(inode))
|
||||||
ret = f2fs_read_inline_data(inode, page);
|
ret = f2fs_read_inline_data(inode, page);
|
||||||
else
|
else
|
||||||
|
@ -32,7 +32,7 @@ static void update_general_status(struct f2fs_sb_info *sbi)
|
|||||||
struct f2fs_stat_info *si = F2FS_STAT(sbi);
|
struct f2fs_stat_info *si = F2FS_STAT(sbi);
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* valid check of the segment numbers */
|
/* validation check of the segment numbers */
|
||||||
si->hit_ext = sbi->read_hit_ext;
|
si->hit_ext = sbi->read_hit_ext;
|
||||||
si->total_ext = sbi->total_hit_ext;
|
si->total_ext = sbi->total_hit_ext;
|
||||||
si->ndirty_node = get_pages(sbi, F2FS_DIRTY_NODES);
|
si->ndirty_node = get_pages(sbi, F2FS_DIRTY_NODES);
|
||||||
@ -152,7 +152,7 @@ static void update_mem_info(struct f2fs_sb_info *sbi)
|
|||||||
si->base_mem += NR_DIRTY_TYPE * f2fs_bitmap_size(TOTAL_SEGS(sbi));
|
si->base_mem += NR_DIRTY_TYPE * f2fs_bitmap_size(TOTAL_SEGS(sbi));
|
||||||
si->base_mem += f2fs_bitmap_size(TOTAL_SECS(sbi));
|
si->base_mem += f2fs_bitmap_size(TOTAL_SECS(sbi));
|
||||||
|
|
||||||
/* buld nm */
|
/* build nm */
|
||||||
si->base_mem += sizeof(struct f2fs_nm_info);
|
si->base_mem += sizeof(struct f2fs_nm_info);
|
||||||
si->base_mem += __bitmap_size(sbi, NAT_BITMAP);
|
si->base_mem += __bitmap_size(sbi, NAT_BITMAP);
|
||||||
|
|
||||||
|
@ -124,7 +124,7 @@ static struct f2fs_dir_entry *find_in_block(struct page *dentry_page,
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* For the most part, it should be a bug when name_len is zero.
|
* For the most part, it should be a bug when name_len is zero.
|
||||||
* We stop here for figuring out where the bugs are occurred.
|
* We stop here for figuring out where the bugs has occurred.
|
||||||
*/
|
*/
|
||||||
f2fs_bug_on(!de->name_len);
|
f2fs_bug_on(!de->name_len);
|
||||||
|
|
||||||
@ -563,7 +563,7 @@ fail:
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* It only removes the dentry from the dentry page,corresponding name
|
* It only removes the dentry from the dentry page, corresponding name
|
||||||
* entry in name page does not need to be touched during deletion.
|
* entry in name page does not need to be touched during deletion.
|
||||||
*/
|
*/
|
||||||
void f2fs_delete_entry(struct f2fs_dir_entry *dentry, struct page *page,
|
void f2fs_delete_entry(struct f2fs_dir_entry *dentry, struct page *page,
|
||||||
|
@ -395,7 +395,7 @@ enum count_type {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The below are the page types of bios used in submti_bio().
|
* The below are the page types of bios used in submit_bio().
|
||||||
* The available types are:
|
* The available types are:
|
||||||
* DATA User data pages. It operates as async mode.
|
* DATA User data pages. It operates as async mode.
|
||||||
* NODE Node pages. It operates as async mode.
|
* NODE Node pages. It operates as async mode.
|
||||||
@ -470,7 +470,7 @@ struct f2fs_sb_info {
|
|||||||
struct list_head dir_inode_list; /* dir inode list */
|
struct list_head dir_inode_list; /* dir inode list */
|
||||||
spinlock_t dir_inode_lock; /* for dir inode list lock */
|
spinlock_t dir_inode_lock; /* for dir inode list lock */
|
||||||
|
|
||||||
/* basic file system units */
|
/* basic filesystem units */
|
||||||
unsigned int log_sectors_per_block; /* log2 sectors per block */
|
unsigned int log_sectors_per_block; /* log2 sectors per block */
|
||||||
unsigned int log_blocksize; /* log2 block size */
|
unsigned int log_blocksize; /* log2 block size */
|
||||||
unsigned int blocksize; /* block size */
|
unsigned int blocksize; /* block size */
|
||||||
@ -799,7 +799,7 @@ static inline block_t __start_cp_addr(struct f2fs_sb_info *sbi)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* odd numbered checkpoint should at cp segment 0
|
* odd numbered checkpoint should at cp segment 0
|
||||||
* and even segent must be at cp segment 1
|
* and even segment must be at cp segment 1
|
||||||
*/
|
*/
|
||||||
if (!(ckpt_version & 1))
|
if (!(ckpt_version & 1))
|
||||||
start_addr += sbi->blocks_per_seg;
|
start_addr += sbi->blocks_per_seg;
|
||||||
|
@ -288,7 +288,7 @@ static loff_t f2fs_seek_block(struct file *file, loff_t offset, int whence)
|
|||||||
if (err && err != -ENOENT) {
|
if (err && err != -ENOENT) {
|
||||||
goto fail;
|
goto fail;
|
||||||
} else if (err == -ENOENT) {
|
} else if (err == -ENOENT) {
|
||||||
/* direct node is not exist */
|
/* direct node does not exists */
|
||||||
if (whence == SEEK_DATA) {
|
if (whence == SEEK_DATA) {
|
||||||
pgofs = PGOFS_OF_NEXT_DNODE(pgofs,
|
pgofs = PGOFS_OF_NEXT_DNODE(pgofs,
|
||||||
F2FS_I(inode));
|
F2FS_I(inode));
|
||||||
|
@ -58,7 +58,7 @@ static int gc_thread_func(void *data)
|
|||||||
* 3. IO subsystem is idle by checking the # of requests in
|
* 3. IO subsystem is idle by checking the # of requests in
|
||||||
* bdev's request list.
|
* bdev's request list.
|
||||||
*
|
*
|
||||||
* Note) We have to avoid triggering GCs too much frequently.
|
* Note) We have to avoid triggering GCs frequently.
|
||||||
* Because it is possible that some segments can be
|
* Because it is possible that some segments can be
|
||||||
* invalidated soon after by user update or deletion.
|
* invalidated soon after by user update or deletion.
|
||||||
* So, I'd like to wait some time to collect dirty segments.
|
* So, I'd like to wait some time to collect dirty segments.
|
||||||
@ -222,7 +222,7 @@ static unsigned int get_cb_cost(struct f2fs_sb_info *sbi, unsigned int segno)
|
|||||||
|
|
||||||
u = (vblocks * 100) >> sbi->log_blocks_per_seg;
|
u = (vblocks * 100) >> sbi->log_blocks_per_seg;
|
||||||
|
|
||||||
/* Handle if the system time is changed by user */
|
/* Handle if the system time has changed by the user */
|
||||||
if (mtime < sit_i->min_mtime)
|
if (mtime < sit_i->min_mtime)
|
||||||
sit_i->min_mtime = mtime;
|
sit_i->min_mtime = mtime;
|
||||||
if (mtime > sit_i->max_mtime)
|
if (mtime > sit_i->max_mtime)
|
||||||
|
@ -91,7 +91,7 @@ static inline bool has_enough_invalid_blocks(struct f2fs_sb_info *sbi)
|
|||||||
block_t invalid_user_blocks = sbi->user_block_count -
|
block_t invalid_user_blocks = sbi->user_block_count -
|
||||||
written_block_count(sbi);
|
written_block_count(sbi);
|
||||||
/*
|
/*
|
||||||
* Background GC is triggered with the following condition.
|
* Background GC is triggered with the following conditions.
|
||||||
* 1. There are a number of invalid blocks.
|
* 1. There are a number of invalid blocks.
|
||||||
* 2. There is not enough free space.
|
* 2. There is not enough free space.
|
||||||
*/
|
*/
|
||||||
|
@ -229,7 +229,7 @@ static int f2fs_unlink(struct inode *dir, struct dentry *dentry)
|
|||||||
f2fs_delete_entry(de, page, inode);
|
f2fs_delete_entry(de, page, inode);
|
||||||
f2fs_unlock_op(sbi);
|
f2fs_unlock_op(sbi);
|
||||||
|
|
||||||
/* In order to evict this inode, we set it dirty */
|
/* In order to evict this inode, we set it dirty */
|
||||||
mark_inode_dirty(inode);
|
mark_inode_dirty(inode);
|
||||||
fail:
|
fail:
|
||||||
trace_f2fs_unlink_exit(inode, err);
|
trace_f2fs_unlink_exit(inode, err);
|
||||||
|
@ -237,7 +237,7 @@ retry:
|
|||||||
nat_get_blkaddr(e) != NULL_ADDR &&
|
nat_get_blkaddr(e) != NULL_ADDR &&
|
||||||
new_blkaddr == NEW_ADDR);
|
new_blkaddr == NEW_ADDR);
|
||||||
|
|
||||||
/* increament version no as node is removed */
|
/* increment version no as node is removed */
|
||||||
if (nat_get_blkaddr(e) != NEW_ADDR && new_blkaddr == NULL_ADDR) {
|
if (nat_get_blkaddr(e) != NEW_ADDR && new_blkaddr == NULL_ADDR) {
|
||||||
unsigned char version = nat_get_version(e);
|
unsigned char version = nat_get_version(e);
|
||||||
nat_set_version(e, inc_node_version(version));
|
nat_set_version(e, inc_node_version(version));
|
||||||
@ -274,7 +274,7 @@ int try_to_free_nats(struct f2fs_sb_info *sbi, int nr_shrink)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This function returns always success
|
* This function always returns success
|
||||||
*/
|
*/
|
||||||
void get_node_info(struct f2fs_sb_info *sbi, nid_t nid, struct node_info *ni)
|
void get_node_info(struct f2fs_sb_info *sbi, nid_t nid, struct node_info *ni)
|
||||||
{
|
{
|
||||||
@ -650,7 +650,7 @@ static int truncate_partial_nodes(struct dnode_of_data *dn,
|
|||||||
|
|
||||||
/* get indirect nodes in the path */
|
/* get indirect nodes in the path */
|
||||||
for (i = 0; i < idx + 1; i++) {
|
for (i = 0; i < idx + 1; i++) {
|
||||||
/* refernece count'll be increased */
|
/* reference count'll be increased */
|
||||||
pages[i] = get_node_page(sbi, nid[i]);
|
pages[i] = get_node_page(sbi, nid[i]);
|
||||||
if (IS_ERR(pages[i])) {
|
if (IS_ERR(pages[i])) {
|
||||||
err = PTR_ERR(pages[i]);
|
err = PTR_ERR(pages[i]);
|
||||||
@ -836,7 +836,7 @@ void remove_inode_page(struct inode *inode)
|
|||||||
f2fs_put_page(page, 1);
|
f2fs_put_page(page, 1);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
/* 0 is possible, after f2fs_new_inode() is failed */
|
/* 0 is possible, after f2fs_new_inode() has failed */
|
||||||
f2fs_bug_on(inode->i_blocks != 0 && inode->i_blocks != 1);
|
f2fs_bug_on(inode->i_blocks != 0 && inode->i_blocks != 1);
|
||||||
set_new_dnode(&dn, inode, page, page, ino);
|
set_new_dnode(&dn, inode, page, page, ino);
|
||||||
truncate_node(&dn);
|
truncate_node(&dn);
|
||||||
@ -1637,7 +1637,7 @@ int recover_inode_page(struct f2fs_sb_info *sbi, struct page *page)
|
|||||||
if (!ipage)
|
if (!ipage)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
/* Should not use this inode from free nid list */
|
/* Should not use this inode from free nid list */
|
||||||
remove_free_nid(NM_I(sbi), ino);
|
remove_free_nid(NM_I(sbi), ino);
|
||||||
|
|
||||||
SetPageUptodate(ipage);
|
SetPageUptodate(ipage);
|
||||||
@ -1665,7 +1665,7 @@ int recover_inode_page(struct f2fs_sb_info *sbi, struct page *page)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* ra_sum_pages() merge contiguous pages into one bio and submit.
|
* ra_sum_pages() merge contiguous pages into one bio and submit.
|
||||||
* these pre-readed pages are alloced in bd_inode's mapping tree.
|
* these pre-read pages are allocated in bd_inode's mapping tree.
|
||||||
*/
|
*/
|
||||||
static int ra_sum_pages(struct f2fs_sb_info *sbi, struct page **pages,
|
static int ra_sum_pages(struct f2fs_sb_info *sbi, struct page **pages,
|
||||||
int start, int nrpages)
|
int start, int nrpages)
|
||||||
@ -1709,7 +1709,7 @@ int restore_node_summary(struct f2fs_sb_info *sbi,
|
|||||||
for (i = 0; !err && i < last_offset; i += nrpages, addr += nrpages) {
|
for (i = 0; !err && i < last_offset; i += nrpages, addr += nrpages) {
|
||||||
nrpages = min(last_offset - i, bio_blocks);
|
nrpages = min(last_offset - i, bio_blocks);
|
||||||
|
|
||||||
/* read ahead node pages */
|
/* readahead node pages */
|
||||||
nrpages = ra_sum_pages(sbi, pages, addr, nrpages);
|
nrpages = ra_sum_pages(sbi, pages, addr, nrpages);
|
||||||
if (!nrpages)
|
if (!nrpages)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
@ -62,7 +62,7 @@ static inline unsigned long __reverse_ffs(unsigned long word)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* __find_rev_next(_zero)_bit is copied from lib/find_next_bit.c becasue
|
* __find_rev_next(_zero)_bit is copied from lib/find_next_bit.c because
|
||||||
* f2fs_set_bit makes MSB and LSB reversed in a byte.
|
* f2fs_set_bit makes MSB and LSB reversed in a byte.
|
||||||
* Example:
|
* Example:
|
||||||
* LSB <--> MSB
|
* LSB <--> MSB
|
||||||
@ -808,7 +808,7 @@ static void __refresh_next_blkoff(struct f2fs_sb_info *sbi,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This function always allocates a used segment (from dirty seglist) by SSR
|
* This function always allocates a used segment(from dirty seglist) by SSR
|
||||||
* manner, so it should recover the existing segment information of valid blocks
|
* manner, so it should recover the existing segment information of valid blocks
|
||||||
*/
|
*/
|
||||||
static void change_curseg(struct f2fs_sb_info *sbi, int type, bool reuse)
|
static void change_curseg(struct f2fs_sb_info *sbi, int type, bool reuse)
|
||||||
|
@ -549,7 +549,7 @@ static inline void verify_block_addr(struct f2fs_sb_info *sbi, block_t blk_addr)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Summary block is always treated as invalid block
|
* Summary block is always treated as an invalid block
|
||||||
*/
|
*/
|
||||||
static inline void check_block_count(struct f2fs_sb_info *sbi,
|
static inline void check_block_count(struct f2fs_sb_info *sbi,
|
||||||
int segno, struct f2fs_sit_entry *raw_sit)
|
int segno, struct f2fs_sit_entry *raw_sit)
|
||||||
|
@ -663,7 +663,7 @@ restore_gc:
|
|||||||
if (need_restart_gc) {
|
if (need_restart_gc) {
|
||||||
if (start_gc_thread(sbi))
|
if (start_gc_thread(sbi))
|
||||||
f2fs_msg(sbi->sb, KERN_WARNING,
|
f2fs_msg(sbi->sb, KERN_WARNING,
|
||||||
"background gc thread is stop");
|
"background gc thread has stopped");
|
||||||
} else if (need_stop_gc) {
|
} else if (need_stop_gc) {
|
||||||
stop_gc_thread(sbi);
|
stop_gc_thread(sbi);
|
||||||
}
|
}
|
||||||
|
@ -528,7 +528,7 @@ static int __f2fs_setxattr(struct inode *inode, int index,
|
|||||||
int free;
|
int free;
|
||||||
/*
|
/*
|
||||||
* If value is NULL, it is remove operation.
|
* If value is NULL, it is remove operation.
|
||||||
* In case of update operation, we caculate free.
|
* In case of update operation, we calculate free.
|
||||||
*/
|
*/
|
||||||
free = MIN_OFFSET(inode) - ((char *)last - (char *)base_addr);
|
free = MIN_OFFSET(inode) - ((char *)last - (char *)base_addr);
|
||||||
if (found)
|
if (found)
|
||||||
|
Loading…
Reference in New Issue
Block a user