• J
    f2fs: invalidate the node page if allocation is failed · 71e9fec5
    Jaegeuk Kim 提交于
    The new_node_page() is processed as the following procedure.
    
    1. A new node page is allocated.
    2. Set PageUptodate with proper footer information.
    3. Check if there is a free space for allocation
     4.a. If there is no space, f2fs returns with -ENOSPC.
     4.b. Otherwise, go next.
    
    In the case of step #4.a, f2fs remains a wrong node page in the page cache
    with the uptodate flag.
    
    Also, even though a new node page is allocated successfully, an error can be
    occurred afterwards due to allocation failure of the other data structures.
    In such a case, remove_inode_page() would be triggered, so that we have to
    clear uptodate flag in truncate_node() too.
    
    So, we should remove the uptodate flag, if allocation is failed.
    Signed-off-by: NJaegeuk Kim <jaegeuk.kim@samsung.com>
    71e9fec5
node.c 40.7 KB