inode.c (aaccf3c97418f169afdbb5855e9cbcbda34e90fd) inode.c (4354994f097d068a894aa1a0860da54571df3582)
1// SPDX-License-Identifier: GPL-2.0
1/*
2 * fs/f2fs/inode.c
3 *
4 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 * http://www.samsung.com/
2/*
3 * fs/f2fs/inode.c
4 *
5 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
6 * http://www.samsung.com/
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */
11#include <linux/fs.h>
12#include <linux/f2fs_fs.h>
13#include <linux/buffer_head.h>
14#include <linux/backing-dev.h>
15#include <linux/writeback.h>
16
17#include "f2fs.h"

--- 587 unchanged lines hidden (view full) ---

605
606 if (inode->i_ino == F2FS_NODE_INO(sbi) ||
607 inode->i_ino == F2FS_META_INO(sbi))
608 return 0;
609
610 if (!is_inode_flag_set(inode, FI_DIRTY_INODE))
611 return 0;
612
7 */
8#include <linux/fs.h>
9#include <linux/f2fs_fs.h>
10#include <linux/buffer_head.h>
11#include <linux/backing-dev.h>
12#include <linux/writeback.h>
13
14#include "f2fs.h"

--- 587 unchanged lines hidden (view full) ---

602
603 if (inode->i_ino == F2FS_NODE_INO(sbi) ||
604 inode->i_ino == F2FS_META_INO(sbi))
605 return 0;
606
607 if (!is_inode_flag_set(inode, FI_DIRTY_INODE))
608 return 0;
609
610 if (f2fs_is_checkpoint_ready(sbi))
611 return -ENOSPC;
612
613 /*
614 * We need to balance fs here to prevent from producing dirty node pages
615 * during the urgent cleaning time when runing out of free sections.
616 */
617 f2fs_update_inode_page(inode);
618 if (wbc && wbc->nr_to_write)
619 f2fs_balance_fs(sbi, true);
620 return 0;

--- 65 unchanged lines hidden (view full) ---

686 sb_end_intwrite(inode->i_sb);
687no_delete:
688 dquot_drop(inode);
689
690 stat_dec_inline_xattr(inode);
691 stat_dec_inline_dir(inode);
692 stat_dec_inline_inode(inode);
693
613 /*
614 * We need to balance fs here to prevent from producing dirty node pages
615 * during the urgent cleaning time when runing out of free sections.
616 */
617 f2fs_update_inode_page(inode);
618 if (wbc && wbc->nr_to_write)
619 f2fs_balance_fs(sbi, true);
620 return 0;

--- 65 unchanged lines hidden (view full) ---

686 sb_end_intwrite(inode->i_sb);
687no_delete:
688 dquot_drop(inode);
689
690 stat_dec_inline_xattr(inode);
691 stat_dec_inline_dir(inode);
692 stat_dec_inline_inode(inode);
693
694 if (likely(!is_set_ckpt_flags(sbi, CP_ERROR_FLAG)))
694 if (likely(!is_set_ckpt_flags(sbi, CP_ERROR_FLAG) &&
695 !is_sbi_flag_set(sbi, SBI_CP_DISABLED)))
695 f2fs_bug_on(sbi, is_inode_flag_set(inode, FI_DIRTY_INODE));
696 else
697 f2fs_inode_synced(inode);
698
699 /* ino == 0, if f2fs_new_inode() was failed t*/
700 if (inode->i_ino)
701 invalidate_mapping_pages(NODE_MAPPING(sbi), inode->i_ino,
702 inode->i_ino);

--- 79 unchanged lines hidden ---
696 f2fs_bug_on(sbi, is_inode_flag_set(inode, FI_DIRTY_INODE));
697 else
698 f2fs_inode_synced(inode);
699
700 /* ino == 0, if f2fs_new_inode() was failed t*/
701 if (inode->i_ino)
702 invalidate_mapping_pages(NODE_MAPPING(sbi), inode->i_ino,
703 inode->i_ino);

--- 79 unchanged lines hidden ---